개발자 바다의 파도

개발의 무인도에 갇혔다

알고리즘 공부/백준 알고리즘

3052 - 나머지 (C++)

개바파 2024. 2. 9. 03:05

문제 - 두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다. 수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오.

 

입력 - 첫째 줄부터 열번째 줄 까지 숫자가 한 줄에 하나씩 주어진다. 이 숫자는 1,000보다 작거나 같고, 음이 아닌 정수이다.

 

출력 - 첫째 줄에, 42로 나누었을 때, 서로 다른 나머지가 몇 개 있는지 출력한다.

 

풀이 - 

 

 

     이번 문제는 주어진 숫자에 42를 나눠서 남은 나머지 값을 구해서 나머지 값이 중복 안된 수가 몇 개인지 확인하는 문제입니다. 11번줄 for문은 배열 arr을 초기화 해줍니다. 여기서 arr 크기는 42로 42인 숫자로 나눈 이상 42보다 큰 나머지 값이 안 나오기 때문입니다. 이후 16번줄 for문은 10개의 수를 입력하고 입력한 수를 42만큼 나누어서 나머지 값을 인덱스로 해서 arr에 값을 1씩 올립니다. 23번줄 for문에서는 arr 배열에 있는 값이 0보다 크면 answer을 1씩 늘려주면 됩니다. 만일 answer이 0인 경우 1을 출력하기 위해서 35번줄 if문을 설정했습니다.

 

코드 복붙 주소 - https://github.com/ResToEons/BaekJoonAlgorithm/tree/main/4%20-%201%EC%B0%A8%EC%9B%90%20%EB%B0%B0%EC%97%B4/08%20-%20%EB%82%98%EB%A8%B8%EC%A7%80%20(3052)

'알고리즘 공부 > 백준 알고리즘' 카테고리의 다른 글

1546 - 평균 (C++)  (1) 2024.02.13
10811 - 바구니 뒤집기 (C++)  (1) 2024.02.09
5597 - 과제 안 내신 분..? (C++)  (2) 2024.02.06
10813 - 공 바꾸기 (C++)  (1) 2024.02.06
10810 - 공 넣기 (C++)  (0) 2024.02.01