본문 바로가기

코딩테스트42

[Algorithm][Python] 자릿수의 합 [문제] 자릿수의 합 N개의 자연수가 입력되면 각 자연수의 자릿수의 합을 구하고, 그 합이 최대인 자연수를 출력 하는 프로그램을 작성하세요. 각 자연수의 자릿수의 합을 구하는 함수를 def digit_sum(x)를 꼭 작성해서 프로그래밍 하세요. 입력 설명 첫 줄에 자연수의 개수 N(3 0: sum += x % 10 x = x // 10 return sum n = int(input()) a = list(map(int ,input().split())) max = -2147000000 answer = 0 for x in a: total = digit_sum(x) if total > max: max = total answer = x print(answer) 2021. 5. 19.
[Algorithm][Python] 정다면체 [문제] K번째 큰 수 두 개의 정 N면체와 정 M면체의 두 개의 주사위를 던져서 나올 수 있는 눈의 합 중 가장 확 률이 높은 숫자를 출력하는 프로그램을 작성하세요. 정답이 여러 개일 경우 오름차순으로 출력합니다. 입력 설명 첫 번째 줄에는 자연수 N과 M이 주어집니다. N과 M은 4, 6, 8, 12, 20 중의 하나입니다. 출력 설명 첫 번째 줄에 답을 출력합니다. 입력예제 1 4 6 출력예제 1 5 6 7 문제 접근 N과 M을 입력받고, N+M의 합은 주사위가 나올 수 있는 최대합이므로 N+M의 합의 갯수만큼 0의 값을 가지는 배열을 만들어준다. N과 M을 이중 for문을 돌면서 두 주사위의 합의 인덱스에 +=1 을 해준다. dice 배열을 for문을 돌려서 if max값과 같으면 출력한다. 풀이.. 2021. 5. 13.
[Algorithm][Python] 대표값 [문제] K번째 큰 수 N명의 학생의 수학성적이 주어집니다. N명의 학생들의 평균(소수 첫째자리 반올림)을 구하고, N명의 학생 중 평균에 가장 가까운 학생은 몇 번째 학생인지 출력하는 프로그램을 작성하세 요. 답이 2개일 경우 성적이 높은 학생의 번호를 출력하세요. 만약 답이 되는 점수가 여러 개일 경우 번호가 빠른 학생의 번호를 답으로 한다 입력 설명 첫줄에 자연수 N(5 2021. 5. 13.
[Algorithm][Python] K번째 큰 수 [문제] K번째 큰 수 현수는 1부터 100사이의 자연수가 적힌 N장의 카드를 가지고 있습니다. 같은 숫자의 카드가 여러장 있을 수 있습니다. 현수는 이 중 3장을 뽑아 각 카드에 적힌 수를 합한 값을 기록하려 고 합니다. 3장을 뽑을 수 있는 모든 경우를 기록합니다. 기록한 값 중 K번째로 큰 수를 출력 하는 프로그램을 작성하세요. 만약 큰 수부터 만들어진 수가 25 25 23 23 22 20 19......이고 K값이 3이라면 K번째 큰 값 은 22입니다. 입력 설명 첫 줄에 자연수 N(3 2021. 5. 13.
[Algorithm][Python] K번째 작은수 [문제] K번째 작은수 어떤 자연수 p와 q가 있을 때, 만일 p를 q로 나누었을 때 나머지가 0이면 q는 p의 약수이다. N개의 숫자로 이루어진 숫자열이 주어지면 해당 숫자열중에서 s번째부터 e번째 까지의 수 중 k번째로 작은 수를 출력하는 프로그램을 작성하세요. 입력 설명 첫째 줄에 N과 K가 빈칸을 사이에 두고 주어진다. N은 1 이상 10,000 이하이다. K는 1 이상 N 이하이다.첫 번째 줄에 테스트 케이스 T(1 2021. 5. 13.
[Algorithm][Python] K번째 약수 [문제] K번째 약수 어떤 자연수 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번째 약수가 존재하.. 2021. 5. 13.