[23.07.15] 11720번 : 숫자의 합

장서영·2023년 7월 15일
0

백준 알고리즘

목록 보기
6/6
post-thumbnail

백준 11720번 : 숫자의 합

소요 시간 : 약 16분

로직

  • 사용자로부터의 입력값을 cnt와 N에 저장한다.
  • N 문자열에서 한 개씩 떼어서 int로 변환 후, nums 리스트에 저장한다.
  • sum()으로 nums를 한 번에 더해서 출력한다.

python으로 풂

import sys

input = sys.stdin.readline
cnt = int(input())
N = input()

nums = [0 for _ in range(cnt)]
for i in range(cnt):
    nums[i] = int(N[i])

print(sum(nums))

javascript로 옮김

const input = require('fs').readFileSync('/dev/stdin').toString().split('\n');
const cnt = parseInt(input[0]);
const N = input[1];

let nums = Array(cnt).fill(0);
for (let i = 0; i < cnt; i++) {
    nums[i] = parseInt(N[i]);
}

console.log(nums.reduce((a, b) => a + b, 0));

(자바스크립트 로직)

  • 표준 입력을 읽고 입력을 문자열 배열로 변환한다.
  • 배열의 첫 번째 요소는 → cnt (입력할 수의 갯수)
  • 배열의 두 번째 요소는 → N (공백 없이 입력한 수)
  • 그 다음 cnt와 같은 길이의 0 배열 nums를 생성하고, 입력 받은 N에서 각 숫자를 넣는다.
  • 마지막으로 배열에 있는 숫자의 합을 계산하여, 표준 출력으로 출력한다.

모르는 거

  • sys.stdin.readline
  • input().split()을 해도 제대로 쪼개지지 않는다. ⇒ 공백 없이 입력 받는데, split()은 ‘ ‘(공백 문자 1개 or 여러개)를 기준으로 쪼개기 때문!
profile
하루살이 개발자

0개의 댓글