https://www.acmicpc.net/problem/3052
3052번: 나머지
각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다.
www.acmicpc.net
c++로 백준 3052번 문제를 풀어보겠다.
문제
두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다.
수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오.
입력
첫째 줄부터 열번째 줄 까지 숫자가 한 줄에 하나씩 주어진다. 이 숫자는 1,000보다 작거나 같고, 음이 아닌 정수이다.
출력
첫째 줄에, 42로 나누었을 때, 서로 다른 나머지가 몇 개 있는지 출력한다.
예제 입력 1 복사
1
2
3
4
5
6
7
8
9
10
예제 출력 1 복사
10
<문제 풀이>
1. 1차원 배열 arr[10]을 선언한 후 10개의 정수를 입력받는다.
2. 입력받은 정수를 '42로 나눈 그 나머지 값'으로 다시 바꾸어 저장한다.
3. 정수 10개를 for문을 사용해 서로 한 번씩 비교하며 그 값이 같으면 둘 중 하나를 '-1'로 바꾸어 저장한다.
4. 정수 10개를 for문을 사용해 저장된 값이 -1이 아니라면 count 값을 하나 올린다.
5. count 값을 출력한다.
코드는 다음과 같다.
'C++' 카테고리의 다른 글
[백준 알고리즘] 10845번 : 큐, c++ (0) | 2022.01.17 |
---|---|
[백준 알고리즘] 2292번 : 벌집, c++ (0) | 2022.01.16 |
[백준 알고리즘] 10872번 : 팩토리얼, c++ (0) | 2022.01.16 |
[백준 알고리즘] 9076번 : 점수 집계, c++ (0) | 2022.01.15 |
[백준 알고리즘] 10808번 : 알파벳 개수, c++ (0) | 2022.01.15 |