검증수
백준 - 검증수
문제 설명
문제
컴퓨터를 제조하는 회사인 KOI 전자에서는 제조하는 컴퓨터마다 6자리의 고유번호를 매긴다.
고유번호의 처음 5자리에는 00000부터 99999까지의 수 중 하나가 주어지며 6번째 자리에는 검증수가 들어간다.
검증수는 고유번호의 처음 5자리에 들어가는 5개의 숫자를 각각 제곱한 수의 합을 10으로 나눈 나머지이다.
예를 들어 고유번호의 처음 5자리의 숫자들이 04256이면, 각 숫자를 제곱한 수들의 합 0+16+4+25+36 = 81 을 10으로 나눈 나머지인 1이 검증수이다.
입력
첫째 줄에 고유번호의 처음 5자리의 숫자들이 빈칸을 사이에 두고 하나씩 주어진다.
출력
첫째 줄에 검증수를 출력한다.
예제 입력
0 4 2 5 6
예제 출력
1
제출
아래와 같이 코드를 작성했다
const fs = require('fs')
const input = fs.readFileSync('/dev/stdin').toString().split(" ")
const number = input.map(item => parseInt(item)*parseInt(item))
var sum = 0
for(i=0; i<5; i++){
sum += number[i]
}
const key = sum % 10
console.log(key)
처음으로 한번에 맞아본 문제다😊
input에 입력 값을 받은 후 number에 map 함수를 이용해서 제곱을 한 배열을 리턴해주었다
그리고 반복문을 이용해서 전체 합을 구한 후에 합을 10으로 나누고 그 값을 콘솔로 찍었다
맞춘 후에도 구글로 검색해보고 비교해봤는데 확실히 다른 분들 코드는 짧고 간결했다
맞춰도 속이 시원하지는 않지만 조금씩 성장해나가도록 하자!!
아래는 잘하시는 분 코드이다
const fs = require('fs');
let answer = 0;
const input = fs.readFileSync("/dev/stdin").toString().trim().split(" ").map(i => answer += Math.pow(Number(i), 2));
answer = answer % 10;
console.log(answer)
출처: https://overcome-the-limits.tistory.com/167 [Plus Ultra]
Author And Source
이 문제에 관하여(검증수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@qnrl3442/백준-검증수저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)