이번 문제는 아래 링크에서 풀어볼 수 있습니다.
4375번: 1
2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오.
www.acmicpc.net
🤔 문제
2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오.
입력
입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, n이 주어진다.
출력
1로 이루어진 n의 배수 중 가장 작은 수의 자리수를 출력한다.
예제 입력 1
3
7
9901
예제 출력 1
3
6
12
정답 코드
답안1
문제 풀이
이전 나머지 문제에 나왔던 나머지 계산 공식을 활용해야 하는 문제이다. 숫자 3과 7로 계산을 수행한다고 했을 때 계산 과정은 다음과 같다.
문제를 풀려면 '1로만 이루어진 N의 배수'를 찾아야 한다. 이는 1, 11, 111, 1111... 과 같은 숫자이다. 이 같은 숫자에 입력 받은 숫자를 나누어, 나눠떨어진다면 해당 1로만 이루어진 배수의 자릿수를 반환하면 된다. 이때 나머지 계산 공식을 활용한다. 나머지 계산 공식은 "답을 N으로 나눈 나머지를 구하시오"와 같은 유형의 문제에 주로 활용된다.
입력 받은 숫자(n)를 3이라고 했을 때 정답 코드의 계산 과정은 다음과 같다.
입력 받은 수(n): 3
1로만 이루어진 배수(num = num * 10 + 1): 1
나머지(num = num % n): 1
자릿수(i): 1
1로만 이루어진 배수(num = num * 10 + 1): 11
나머지(num = num % n): 2
자릿수(i): 2
1로만 이루어진 배수(num = num * 10 + 1): 21
나머지(num = num % n): 0
자릿수(i): 3
while 반복문을 돌며 1로만 이루어진 배수를 생성하다 입력 받은 수로 나눠떨어지면 그때까지 쌓은 자릿수를 출력하는 것이다.
함께 보기
[Baekjoon] 10430 나머지(자바스크립트/NodeJs)
이번 문제는 아래 링크에서 풀어볼 수 있습니다. 10430번: 나머지 첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000) www.acmicpc.net 🤔 문제 (A+B)%C는 ((A%C) + (B%C))%C 와 같을까? (A×B)%C는 ((A%C) ×
gdk01.tistory.com
https://merry555.tistory.com/m/13
나머지 연산 - 백준 4375번 [Python]
문제에서 "정답을 ~~~로 나눈 나머지를 출력하라 (경우의 수를 구하는 문제)" 라는 말이 있는 경우 정답이 int나 long long과 같은 저료형의 범위를 넘어가기 때문이다. 따라서 나머지 연산을 통해 해
merry555.tistory.com
https://jie0025.tistory.com/144
[BOJ - 수학] 4375번 : 1 ( python )
백준 4375번 (실버3) 파이썬 https://www.acmicpc.net/problem/4375 4375번: 1 2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오. www.acmi
jie0025.tistory.com
'👩💻 Programming > Coding Test 문제 풀이' 카테고리의 다른 글
[Baekjoon] 17427 약수의 합 2(자바스크립트/NodeJs) (0) | 2023.01.11 |
---|---|
[Baekjoon] 1037 약수(자바스크립트/NodeJs) (0) | 2023.01.11 |
[Baekjoon] 10430 나머지(자바스크립트/NodeJs) (0) | 2023.01.11 |
[Baekjoon] 11653 소인수분해(자바스크립트/NodeJs) (0) | 2023.01.10 |
[Baekjoon] 11576 Base Conversion(자바스크립트/NodeJs) (1) | 2023.01.10 |
댓글