파이썬문제풀이 (11) 썸네일형 리스트형 <수학2> 11653번 소인수분해 with 파이썬 문제 정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오. 입력 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. 출력 N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다. 정답비율 53.654% N = int(input()) while N != 1 : for i in range(2,N+1): if N%i == 0: print(i) N = int(N/i) break while문을 통해 N이 1이 될 때 까지 분해시켜주었다. for문에서는 2부터 N까지 숫자를 이용하여 소인수분해를 진행시켰다. 나머지가 0인경우 소인수로 판단하여 출력시키고, N을 분해된 값으로 변환 시켰다. 이 때 i로 나누면서 float형식이 되므로 int로.. <수학2> 4153번 직각삼각형 with 파이썬 문제 과거 이집트인들은 각 변들의 길이가 3, 4, 5인 삼각형이 직각 삼각형인것을 알아냈다. 주어진 세변의 길이로 삼각형이 직각인지 아닌지 구분하시오. 입력 입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다. 출력 각 입력에 대해 직각 삼각형이 맞다면 "right", 아니라면 "wrong"을 출력한다. 정답비율 54.849% while True : lst = list(map(int, input().split())) lst.sort() a = lst[0] b = lst[1] c = lst[2] if a==b==c==0 : break if (a*a)+(b*b) == (c*c) : p.. <수학2> 3009번 네 번째 점 with 파이썬 문제 세 점이 주어졌을 때, 축에 평행한 직사각형을 만들기 위해서 필요한 네 번째 점을 찾는 프로그램을 작성하시오. 입력 세 점의 좌표가 한 줄에 하나씩 주어진다. 좌표는 1보다 크거나 같고, 1000보다 작거나 같은 정수이다. 출력 직사각형의 네 번째 점의 좌표를 출력한다. 정답비율 73.725% x1, y1 = map(int, input().split()) x2, y2 = map(int, input().split()) x3, y3 = map(int, input().split()) # x값 비교하여 x4 구하기 if x1 == x2 : x4 = x3 elif x1 == x3 : x4 = x2 else : x4 = x1 # y값 비교하여 y4 구하기 if y1 == y2 : y4 = y3 elif y1 .. <수학2> 1085번 직사각형에서 탈출 with 파이썬 문제 한수는 지금 (x, y)에 있다. 직사각형의 왼쪽 아래 꼭짓점은 (0, 0)에 있고, 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 x, y, w, h가 주어진다. 출력 첫째 줄에 문제의 정답을 출력한다. 정답비율 58.188% x, y, w, h = map(int,input().split()) North = h - y South = y - 0 West = x - 0 East = w - x lst = [North, South, West, East] # print(lst) # [1, 2, 6, 4] print(min(lst)) 제한으로 주어진 직사각형의 너비와 높이값이 매우 작아서 단순하게 코딩하면 되는 문제였다. 사.. <수학2> 9020번 골드바흐의 추측 with 파이썬 문제 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아니다. 골드바흐의 추측은 유명한 정수론의 미해결 문제로, 2보다 큰 모든 짝수는 두 소수의 합으로 나타낼 수 있다는 것이다. 이러한 수를 골드바흐 수라고 한다. 또, 짝수를 두 소수의 합으로 나타내는 표현을 그 수의 골드바흐 파티션이라고 한다. 예를 들면, 4 = 2 + 2, 6 = 3 + 3, 8 = 3 + 5, 10 = 5 + 5, 12 = 5 + 7, 14 = 3 + 11, 14 = 7 + 7이다. 10000보다 작거나 같은 모든 짝수 n에 대한 골드바흐 파티션은 존재한다. 2보다 큰 짝수.. <수학2> 4948번 베르트랑 공준 with 파이썬 문제 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼프가 1850년에 증명했다. 예를 들어, 10보다 크고, 20보다 작거나 같은 소수는 4개가 있다. (11, 13, 17, 19) 또, 14보다 크고, 28보다 작거나 같은 소수는 3개가 있다. (17,19, 23) 자연수 n이 주어졌을 때, n보다 크고, 2n보다 작거나 같은 소수의 개수를 구하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 케이스는 n을 포함하며, 한 줄로 이루어져 있다. (n ≤ 123456) 입력의 마지막에는 0이 주어진다. 출력 각 테스트 케이.. <수학2> 1929번 소수 구하기 with 파이썬 문제 M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. 출력 한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다. 정답비율 27.379% 이 문제를 보고 앞의 문제와 똑같이 소수를 구하면 될것이라고 생각하였다. 물론 정답비율과 더 넓어진 범위, 그리고 짧은 제한시간이 마음에 걸렸다. 어쨋든 기존과 같은 방식으로 숫자 하나하나를 2부터 그 숫자까지 나눠가며 약수가 있는지 체크하였다. 당연히 시간초과로 오답이 되었다. 그래서 생각한 두 번째 방식은 이렇다. 제곱근까지만 체크하여 시간을 반으로 줄여보자. 예를 들면 이렇다. 10이 소수.. <수학2> 2581번 소수 with 파이썬 문제 자연수 M과 N이 주어질 때 M이상 N이하의 자연수 중 소수인 것을 모두 골라 이들 소수의 합과 최솟값을 찾는 프로그램을 작성하시오. 예를 들어 M=60, N=100인 경우 60이상 100이하의 자연수 중 소수는 61, 67, 71, 73, 79, 83, 89, 97 총 8개가 있으므로, 이들 소수의 합은 620이고, 최솟값은 61이 된다. 입력 입력의 첫째 줄에 M이, 둘째 줄에 N이 주어진다. M과 N은 10,000이하의 자연수이며, M은 N보다 작거나 같다. 출력 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. 정답비율 39.106% M = int(inp.. <수학2> 1978번 소수 찾기 with 파이썬 문제 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. 입력 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. 출력 주어진 수들 중 소수의 개수를 출력한다. 정답비율 48.291% N = int(input()) lst = list(map(int, input().split())) count = 0 for i in lst : if i == 1 : continue elif i == 2 : count += 1 else : for j in range(2,i) : if i % j == 0 : break elif j == i-1 : count += 1 print(count) 제한 시간이 있어서 반복문을 써도 될까.. <수학1> 1011번 Fly me to the Alpha Centauri with 파이썬 문제 우현이는 어린 시절, 지구 외의 다른 행성에서도 인류들이 살아갈 수 있는 미래가 오리라 믿었다. 그리고 그가 지구라는 세상에 발을 내려 놓은 지 23년이 지난 지금, 세계 최연소 ASNA 우주 비행사가 되어 새로운 세계에 발을 내려 놓는 영광의 순간을 기다리고 있다. 그가 탑승하게 될 우주선은 Alpha Centauri라는 새로운 인류의 보금자리를 개척하기 위한 대규모 생활 유지 시스템을 탑재하고 있기 때문에, 그 크기와 질량이 엄청난 이유로 최신기술력을 총 동원하여 개발한 공간이동 장치를 탑재하였다. 하지만 이 공간이동 장치는 이동 거리를 급격하게 늘릴 경우 기계에 심각한 결함이 발생하는 단점이 있어서, 이전 작동시기에 k광년을 이동하였을 때는 k-1 , k 혹은 k+1 광년만을 다시 이동할 수 .. 이전 1 2 다음 목록 더보기