반응형
문제
두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다.
수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한 후 출력한다.
입력
첫째 줄부터 열번째 줄 까지 숫자가 한 줄에 하나씩 주어진다. 이 숫자는 1,000보다 작거나 같고, 음이 아닌 정수이다.
출력
첫째 줄에, 42로 나누었을 때, 서로 다른 나머지가 몇 개 있는지 출력한다.
Python 풀이
arr = []
for i in range(10):
n = int(input())
arr.append(n % 42)
arr = set(arr)
print(len(arr))
빈 배열을 선언 하고, 입력 값 n을 입력 받은뒤 42로 나눈 나머지를 append() 메서드를 이용해 arr에 추가시킨후
set()메서드를 이용해 중복을 제거 시켜서 최종 길이를 출력한다.
JS 풀이
let input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n');
const arr = [];
input.forEach(x => {
const num = x % 42;
if (arr.indexOf(num) === -1) arr.push(num);
});
console.log(userNum.length)
arr 배열을 만들어 준 후 indexOf() 메서드를 사용하여 배열안에 값이 있는지
확인하고 없으면 해당 배열에 입력 받은 값을 42로 나누 나머지를 넣어주고 배열의 길이를 반환해줍니다.
백준 온라인 저지
3052번: 나머지
각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다.
www.acmicpc.net
반응형
'Coding Test > 백준 알고리즘' 카테고리의 다른 글
[백준] 3009 : 네 번째 점 - python (2) | 2024.01.09 |
---|---|
[백준] 2563 : 색종이 - python (0) | 2024.01.06 |
[백준] 2577 (일차원 배열 : 숫자의 개수)_java (0) | 2020.04.16 |
[백준] 2562 (1차원 배열 : 최댓값)_java (0) | 2020.04.16 |
[백준] 10039 (실습1 : 평균점수)_java (0) | 2020.04.16 |