JUNGOL
-
JUNGOL 실력키우기 1402 : 약수 구하기보관함 2017. 9. 16. 16:05
어떤 자연수 p와 q가 있을 때, 만일 p를 q로 나누었을 때 나머지가 0이면 q는 p의 약수이다. 6을 예로 들면 6 ÷ 1 = 6 … 0 6 ÷ 2 = 3 … 0 6 ÷ 3 = 2 … 0 6 ÷ 4 = 1 … 2 6 ÷ 5 = 1 … 1 6 ÷ 6 = 1 … 0 그래서 6의 약수는 1, 2, 3, 6, 총 네 개이다. 두 개의 자연수 N과 K가 주어졌을 때, N의 약수들 중 K번째로 작은 수를 출력하는 프로그램을 작성하시오. 첫째 줄에 N과 K가 빈칸을 사이에 두고 주어진다. N은 1 이상 10,000 이하이다. K는 1 이상 N 이하이다. 첫째 줄에 N의 약수들 중 K번째로 작은 수를 출력한다. 만일 N의 약수의 개수가 K개보다 적어서 K번째 약수가 존재하지 않을 경우에는 0을 출력하시오. [Cop..
-
JUNGOL 실력키우기 1692 : 곱셈보관함 2017. 9. 15. 09:29
(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다. (1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오. 첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다. 첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다. [Copy] 472 385 [Copy] 2360 3776 1416 181720 배열을 활용하면 쉽게 해결할 수 있는 정말 간단한 문제입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 #includ..
-
JUNGOL 실력키우기 1430 : 숫자의 개수보관함 2017. 9. 15. 00:09
세 개의 자연수 A, B, C가 주어질 때 A×B×C를 계산한 결과에 0부터 9까지 각각의 숫자가 몇 번씩 쓰였는지를 구하는 프로그램을 작성하시오. 예를 들어 A = 150, B = 266, C = 427 이라면 A × B × C = 150 × 266 × 427 = 17037300 이 되고, 계산한 결과 17037300 에는 0이 3번, 1이 1번, 3이 2번, 7이 2번 쓰였다. 첫째 줄에 A 둘째 줄에 B 셋째 줄에 C가 주어진다. A B C는 모두 100보다 같거나 크고 1 000보다 작은 자연수이다. 첫째 줄에는 A×B×C의 결과에 0 이 몇 번 쓰였는지 출력한다. 마찬가지로 둘째 줄부터 열 번째 줄까지 A×B×C의 결과에 1부터 9까지의 숫자가 각각 몇 번 쓰였는지 차례로 한 줄에 하나씩 출력한..
-
JUNGOL 실력키우기 2812 : 각 자리수의 합보관함 2017. 9. 14. 08:48
자연수 N을 입력받아서 각 자리수의 합이 한자리가 될 때까지 그 합을 출력하는 프로그램을 작성하시오. ※ int형 변수로는 231-1 까지 입력받을 수 있다. 양의 정수 N을 입력받는다. (1 ≤ N ≤ 263-1) 첫 번째 줄에 입력받은 수의 각 자리수의 합을 출력한다. 출력한 수가 10 이상이면 그 수의 각 자리수의 합을 다음줄에 출력한다. 출력한 수가 10 미만이 될 때까지 반복하여 출력한다. [Copy] 1234567891 [Copy] 46 10 1 굉장히 간단한 문제인데, 사용하는 컴파일러가 달라서 추정해서 풀어야 하는 문제가 또 나왔네요. 현재 저는 Visual Studio를 사용하고 있는데, 체점의 경우 gcc로 이루어지다 보니 제 컴파일러는 제대로 출력해도 저쪽에서는 제대로 처리를 못 하는..
-
JUNGOL 실력키우기 1009 : 각 자리수의 역과 합보관함 2017. 9. 13. 10:25
양의 정수를 입력받아 역으로 보여주고 각 자리 숫자의 합을 구하는 프로그램을 작성하라. 21억 이하의 양의 정수를 입력받는다. 잘못된 데이터는 입력되지 않는다. 하나의 결과가 나온 후에도 계속 새로운 입력을 받다가 0이 입력되면 프로그램을 종료한다. 입력받은 수의 역과 각 자리 숫자의 합을 공백으로 구분하여 출력한다.유효하지않은 "0"은 출력하지 않는다. 입력받은 수의 역도 21억 이하의 정수이다. [Copy] 453 123456 0 [Copy] 354 12 654321 21 이번 문제는 실력키우기 수학에서 첫번째 문제에 속하는 것인데 제가 못 보고 두번째 문제부터 시작했는지 오늘에야 발견했네요. 어쨋거나 첫 문제였던 만큼 쉽게 해결이 가능하긴 합니다. 그런데 조금 더 가독성을 향상시키고 싶은데 잘 안되..
-
JUNGOL 실력키우기 1341 : 구구단2보관함 2017. 9. 12. 08:55
원하는 구구단의 범위를 입력받아 해당 구간의 구구단을 출력하는 프로그램을 작성하시오. (1) 구간의 처음과 끝을 입력받는다. (2) 입력된 구간은 반드시 처음 입력 값이 끝의 입력 값보다 작아야 하는 것은 아니다. 즉, 입력된 구간의 범위는 증가하거나 감소하는 순서 그대로 출력되어야 한다. 구구단의 시작 범위 s와 끝 범위 e를 입력받는다. (s와 e는 2부터 9사이의 정수) 시작 범위와 끝 범위사이의 구구단을 출력하되 모든 값과 부호 사이는 공백으로 구분하여 아래 출력 예와 같이 줄을 맞추어 출력해야 한다. 식과 식 사이는 3개의 공백으로 구분하고 구구단 사이에는 한 줄을 비워 두도록 한다. [Copy] 4 3 [Copy] 4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16 4 ..
-
JUNGOL 실력키우기 1291 : 구구단보관함 2017. 9. 11. 23:33
원하는 구구단의 범위를 입력받아 해당 구간의 구구단을 출력하는 프로그램을 작성하시오. (1) 구간의 처음과 끝을 입력받는다. (2) 입력된 구간은 반드시 처음 입력 값이 끝의 입력 값보다 작아야 하는 것은 아니다. 즉 입력된 구간의 범위는 증가하거나 감소하는 순서 그대로 출력되어야 한다. 구구단의 시작 범위 s,와 끝 범위 e를 입력받는다. (s와 e는 2부터 9사이의 정수) 하나의 결과가 출력되면 프로그램을 종료한다. 시작 범위와 끝 범위사이의 구구단을 출력하되 모든 값과 부호 사이는 공백으로 구분하여 아래 출력 예와 같이 줄을 맞추어 출력해야 한다. 구구단 사이는 3개의 공백으로 구분한다. 데이터의 크기가 주어진 범위를 벗어날 경우는 "INPUT ERROR!"를 출력하고 s와 e를 다시 입력받는다. ..