코딩테스트 132

[백준 python 10989] 수 정렬하기 3

[Bronze I] 수 정렬하기 3 - 10989 문제 링크 성능 요약 메모리: 31120 KB, 시간: 9604 ms 분류 정렬 제출 일자 2023년 12월 11일 20:53:23 문제 설명 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. 출력 첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. import sys input = sys.stdin.readline n = int(input()) count = [0] * 10001 sorted_li = list() for _ in r..

[백준 python 19532] 수학은 비대면강의입니다

[Bronze II] 수학은 비대면강의입니다 - 19532 문제 링크 성능 요약 메모리: 31120 KB, 시간: 700 ms 분류 브루트포스 알고리즘, 수학 제출 일자 2023년 12월 9일 21:31:17 문제 설명 수현이는 4차 산업혁명 시대에 살고 있는 중학생이다. 코로나 19로 인해, 수현이는 버추얼 학교로 버추얼 출석해 버추얼 강의를 듣고 있다. 수현이의 버추얼 선생님은 문자가 2개인 연립방정식을 해결하는 방법에 대해 강의하고, 다음과 같은 문제를 숙제로 냈다. 다음 연립방정식에서 x$x$와 y$y$의 값을 계산하시오. {ax+by=cdx+ey=f\[\begin{cases}ax+by=c\\dx+ey=f\end{cases}\] 4차 산업혁명 시대에 숙제나 하고 앉아있는 것보다 버추얼 친구들을 만..

[백준 python 2231] 분해합

[Bronze II] 분해합 - 2231 문제 링크 성능 요약 메모리: 31120 KB, 시간: 1376 ms 분류 브루트포스 알고리즘 제출 일자 2023년 12월 9일 21:17:41 문제 설명 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 된다. 따라서 245는 256의 생성자가 된다. 물론, 어떤 자연수의 경우에는 생성자가 없을 수도 있다. 반대로, 생성자가 여러 개인 자연수도 있을 수 있다. 자연수 N이 주어졌을 때, N의 가장 작은 생성자를 구해내는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 N(1 ≤ N ≤ 1,..

[백준 python 14215] 세 막대

[Bronze III] 세 막대 - 14215 문제 링크 성능 요약 메모리: 31120 KB, 시간: 40 ms 분류 기하학, 구현, 수학 제출 일자 2023년 12월 7일 12:57:59 문제 설명 영선이는 길이가 a, b, c인 세 막대를 가지고 있고, 각 막대의 길이를 마음대로 줄일 수 있다. 영선이는 세 막대를 이용해서 아래 조건을 만족하는 삼각형을 만들려고 한다. 각 막대의 길이는 양의 정수이다 세 막대를 이용해서 넓이가 양수인 삼각형을 만들 수 있어야 한다. 삼각형의 둘레를 최대로 해야 한다. a, b, c가 주어졌을 때, 만들 수 있는 가장 큰 둘레를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 a, b, c (1 ≤ a, b, c ≤ 100)가 주어진다. 출력 첫째 줄에 만들 수 있는 가..

[백준 11653] 소인수분해

[Bronze I] 소인수분해 - 11653 문제 링크 성능 요약 메모리: 31252 KB, 시간: 1064 ms 분류 수학, 정수론, 소수 판정 제출 일자 2023년 12월 5일 22:25:06 문제 설명 정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오. 입력 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. 출력 N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다. n = int(input()) result = [] for i in range(2, n+1): if n % i == 0: while n % i == 0: n //= i result.append(i) print(*result, sep="\n") 풀이 약수로 ..

[백준 1978] 소수 찾기

[Bronze II] 소수 찾기 - 1978 문제 링크 성능 요약 메모리: 31120 KB, 시간: 44 ms 분류 소수 판정, 정수론, 수학 제출 일자 2023년 12월 5일 21:55:11 문제 설명 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. 입력 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. 출력 주어진 수들 중 소수의 개수를 출력한다. n = int(input()) li = list(map(int, input().split())) if 1 in li: li.remove(1) result = 0 for l in li: count = [] for i in range(1, l+1): if..

[백준 2292] 벌집

[Bronze II] 벌집 - 2292 문제 링크 성능 요약 메모리: 31120 KB, 시간: 44 ms 분류 수학 제출 일자 2023년 12월 2일 19:37:17 문제 설명 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌을 때, 벌집의 중앙 1에서 N번 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나가는지(시작과 끝을 포함하여)를 계산하는 프로그램을 작성하시오. 예를 들면, 13까지는 3개, 58까지는 5개를 지난다. 입력 첫째 줄에 N(1 ≤ N ≤ 1,000,000,000)이 주어진다. 출력 입력으로 주어진 방까지 최소 개수의 방을 지나서 갈 때..

[백준 2903] 중앙 이동 알고리즘

[Bronze III] 중앙 이동 알고리즘 - 2903 문제 링크 성능 요약 메모리: 31120 KB, 시간: 44 ms 분류 수학 제출 일자 2023년 12월 1일 19:49:53 문제 설명 상근이는 친구들과 함께 SF영화를 찍으려고 한다. 이 영화는 외계 지형이 필요하다. 실제로 우주선을 타고 외계 행성에 가서 촬영을 할 수 없기 때문에, 컴퓨터 그래픽으로 CG처리를 하려고 한다. 외계 지형은 중앙 이동 알고리즘을 이용해서 만들려고 한다. 알고리즘을 시작하면서 상근이는 정사각형을 이루는 점 4개를 고른다. 그 후에는 다음과 같은 과정을 거쳐서 지형을 만든다. 정사각형의 각 변의 중앙에 점을 하나 추가한다. 정사각형의 중심에 점을 하나 추가한다. 초기 상태에서 위와 같은 과정을 한 번 거치면 총 4개의..

[백준 10798] 세로읽기

[Bronze I] 세로읽기 - 10798 문제 링크 성능 요약 메모리: 31252 KB, 시간: 48 ms 분류 구현, 문자열 제출 일자 2023년 11월 30일 23:27:15 문제 설명 아직 글을 모르는 영석이가 벽에 걸린 칠판에 자석이 붙어있는 글자들을 붙이는 장난감을 가지고 놀고 있다. 이 장난감에 있는 글자들은 영어 대문자 ‘A’부터 ‘Z’, 영어 소문자 ‘a’부터 ‘z’, 숫자 ‘0’부터 ‘9’이다. 영석이는 칠판에 글자들을 수평으로 일렬로 붙여서 단어를 만든다. 다시 그 아래쪽에 글자들을 붙여서 또 다른 단어를 만든다. 이런 식으로 다섯 개의 단어를 만든다. 아래 그림 1은 영석이가 칠판에 붙여 만든 단어들의 예이다. A A B C D D a f z z 0 9 1 2 1 a 8 E W g ..

[백준 10811] 바구니 뒤집기

[Bronze II] 바구니 뒤집기 - 10811 문제 링크 성능 요약 메모리: 31120 KB, 시간: 44 ms 분류 구현, 시뮬레이션 제출 일자 2023년 11월 28일 16:25:13 문제 설명 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 순서대로 적혀져 있다. 바구니는 일렬로 놓여져 있고, 가장 왼쪽 바구니를 1번째 바구니, 그 다음 바구니를 2번째 바구니, ..., 가장 오른쪽 바구니를 N번째 바구니라고 부른다. 도현이는 앞으로 M번 바구니의 순서를 역순으로 만들려고 한다. 도현이는 한 번 순서를 역순으로 바꿀 때, 순서를 역순으로 만들 범위를 정하고, 그 범위에 들어있는 바구니의 순서를 역순으로 만든다. 바구니의 순서를 어떻게 바꿀지 주어졌을 때, M번..