본문 바로가기

분류 전체보기

(53)
2024.9.4 백준(Python) 1476 날짜 계산 날짜 계산 문제준규가 사는 나라는 우리가 사용하는 연도와 다른 방식을 이용한다. 준규가 사는 나라에서는 수 3개를 이용해서 연도를 나타낸다. 각각의 수는 지구, 태양, 그리고 달을 나타낸다.지구를 나타내는 수를 E, 태양을 나타내는 수를 S, 달을 나타내는 수를 M이라고 했을 때, 이 세 수는 서로 다른 범위를 가진다. (1 ≤ E ≤ 15, 1 ≤ S ≤ 28, 1 ≤ M ≤ 19)우리가 알고있는 1년은 준규가 살고있는 나라에서는 1 1 1로 나타낼 수 있다. 1년이 지날 때마다, 세 수는 모두 1씩 증가한다. 만약, 어떤 수가 범위를 넘어가는 경우에는 1이 된다.예를 들어, 15년은 15 15 15로 나타낼 수 있다. 하지만, 1년이 지나서 16년이 되면 16 16 16이 아니라 1 16 16이 된다..
2024.9.4 백준(Python) 1427 소트인사이드 소트인사이드  문제배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자.입력첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.출력첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다.예제 입력 1 2143예제 출력 1 4321예제 입력 2 999998999예제 출력 2 999999998예제 입력 3 61423예제 출력 3 64321예제 입력 4 500613009예제 출력 4 965310000 정답 코드# 사용자로부터 입력을 받습니다.number = input()# 입력받은 숫자를 문자열로 변환한 뒤, 각 숫자를 리스트의 원소로 변환합니다.num_list = list(map(str, str(number)))# 리스트를..
2024.7.22 백준(Python) 2563 색종이 정답 코드# 100x100 배열을 0으로 초기화white = [[0] * 100 for i in range(100)]# 사각형의 개수를 입력받음R = int(input())# R번 반복하여 각 사각형의 위치를 입력받고, 해당 위치의 10x10 영역을 1로 설정for _ in range(R): # 사각형의 시작 위치 (row, col)를 입력받음 row, col = map(int, input().split()) # 10x10 크기의 영역을 1로 설정 for i in range(row, row + 10): for j in range(col, col + 10): white[i][j] = 1# 1의 개수를 세기 위한 변수 초기화result = 0#..
2024.7.21 백준(Python) 10798 세로 읽기 정답 코드# 빈 리스트를 생성하여 단어들을 저장할 준비를 합니다.word_list = []# 가장 긴 단어의 길이를 저장할 변수를 초기화합니다.max_len = 0# 5개의 단어를 입력받습니다.for i in range(5): # 입력받은 단어를 리스트에 추가합니다. word_list.append(input()) # 현재 단어의 길이가 max_len보다 크면, max_len을 갱신합니다. if max_len
2024.7.20 백준(Python) 25206 너의 평점은 너의 평점은 문제인하대학교 컴퓨터공학과를 졸업하기 위해서는, 전공평점이 3.3 이상이거나 졸업고사를 통과해야 한다. 그런데 아뿔싸, 치훈이는 깜빡하고 졸업고사를 응시하지 않았다는 사실을 깨달았다!치훈이의 전공평점을 계산해주는 프로그램을 작성해보자.전공평점은 전공과목별 (학점 × 과목평점)의 합을 학점의 총합으로 나눈 값이다.인하대학교 컴퓨터공학과의 등급에 따른 과목평점은 다음 표와 같다.A+4.5A04.0B+3.5B03.0C+2.5C02.0D+1.5D01.0F0.0P/F 과목의 경우 등급이 P또는 F로 표시되는데, 등급이 P인 과목은 계산에서 제외해야 한다.과연 치훈이는 무사히 졸업할 수 있을까?입력20줄에 걸쳐 치훈이가 수강한 전공과목의 과목명, 학점, 등급이 공백으로 구분되어 주어진다.출력치훈이의 전..
2024.7.20 백준(Python) 1316 그룹 단어 체커 그룹 단어 체커 문제그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때문에 그룹 단어이지만, aabbbccb는 b가 떨어져서 나타나기 때문에 그룹 단어가 아니다.단어 N개를 입력으로 받아 그룹 단어의 개수를 출력하는 프로그램을 작성하시오.입력첫째 줄에 단어의 개수 N이 들어온다. N은 100보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 단어가 들어온다. 단어는 알파벳 소문자로만 되어있고 중복되지 않으며, 길이는 최대 100이다.출력첫째 줄에 그룹 단어의 개수를 출력한다.예제 입력 1 3happynewyear예제 출력 1 3예제 ..
2024.7.19 백준(Python) 2941 크로아티아 알파벳 크로아티아 알파벳 문제예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다.크로아티아 알파벳변경čc=ćc-dždz=đd-ljljnjnjš s=žz=예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어져 있다. 단어가 주어졌을 때, 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다.dž는 무조건 하나의 알파벳으로 쓰이고, d와 ž가 분리된 것으로 보지 않는다. lj와 nj도 마찬가지이다. 위 목록에 없는 알파벳은 한 글자씩 센다.입력첫째 줄에 최대 100글자의 단어가 주어진다. 알파벳 소문자와 '-', '='로만 이루어져 있다.단어는 크로아티아 알파벳으로 이루어져 있다. 문제 설명의 표에..
2024.7.18 백준(Python) 10813 공 바꾸기 공 바꾸기 문제도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 바구니에는 공이 1개씩 들어있고, 처음에는 바구니에 적혀있는 번호와 같은 번호가 적힌 공이 들어있다.도현이는 앞으로 M번 공을 바꾸려고 한다. 도현이는 공을 바꿀 바구니 2개를 선택하고, 두 바구니에 들어있는 공을 서로 교환한다.공을 어떻게 바꿀지가 주어졌을 때, M번 공을 바꾼 이후에 각 바구니에 어떤 공이 들어있는지 구하는 프로그램을 작성하시오.입력첫째 줄에 N (1 ≤ N ≤ 100)과 M (1 ≤ M ≤ 100)이 주어진다.둘째 줄부터 M개의 줄에 걸쳐서 공을 교환할 방법이 주어진다. 각 방법은 두 정수 i j로 이루어져 있으며, i번 바구니와 j번 바구니에 들어있는 공을 교환한다는 뜻..