IT/Baekjoon Oline Judge
15552번 - 빠른 A+B
개발자희망생고롸파덕
2023. 8. 16. 17:47
사용언어 : javascript - node.js
# 첫번째 제출 코드
const fs = require('fs');
const filePath = process.platform === 'linux' ? '/dev/stdin' : './input.txt';
let input = fs.readFileSync(filePath).toString().split('\n');
solution(input);
function solution(input) {
const testCase = +input[0];
for (let i = 1; i <= testCase; ++i) {
const tempValue = input[i].split(' ').map((item) => +item);
console.log(tempValue[0] + tempValue[1]);
}
}
>> 결과 : 시간 초과
map으로 한번에 바꿔서 그런가?
# 두번째 제출 코드
const fs = require('fs');
const filePath = process.platform === 'linux' ? '/dev/stdin' : './input.txt';
let input = fs.readFileSync(filePath).toString().split('\n');
const testCase = +input[0];
for (let i = 1; i <= testCase; ++i) {
const tempValue = input[i].split(' ');
console.log(Number(tempValue[0]) + Number(tempValue[1]));
}
>> 결과 : 시간 초과
아니 왜...! 하고 다시 문제를 읽어봤다.
"입출력 방식이 느리면 여러 줄을 입력받거나 출력할 때 시간 초과가 날 수 있다"
아.. console.log 를 여러 번 불러서 그런거 같다.
# 최종 제출 코드
let input = require('fs').readFileSync('/dev/stdin').toString().split('\n');
let max = Number(input[0]);
let answer = '';
for (let i = 1; i <= max; i++) {
let num = input[i].split(' ');
answer += Number(num[0]) + Number(num[1]) + '\n';
}
console.log(answer);