Lucky Charms Clover

🥧 Python/⚙️ 코딩테스트

🥧 Python/⚙️ 코딩테스트

[백준-Python] 5217번: 쌍의 합

5217번: 쌍의 합 1보다 크거나 같고 12보다 작거나 같은 자연수 n이 주어졌을 때, 합이 n이 되는 두 자연수의 쌍을 찾는 프로그램을 작성하시오. 예를 들어, 5가 주어진 경우 가능한 쌍은 1,4와 2,3이 있다. 두 수는 www.acmicpc.net 📌 풀이 나를 매우 괴롭게 한 쌍의 합 다른 것보다 출력값이 매우 매우 까다로웠다. 첫째 줄에 테스트 케이스의 수를 입력하면 그 수 만큼 입력할 수 있다. 앞의 수가 뒤의 수와 같거나 더 큰 경우는 출력하지 않는다. 2처럼 같은 수의 쌍만 나오는 경우 역시 출력하지 않는다. 2가지 풀이로 풀어보았다. ✅ 코드 test_case = int(input()) for _ in range(test_case) : val = int(input()) i = 1 li..

🥧 Python/⚙️ 코딩테스트

[백준-Python] 4892번: 숫자 맞추기 게임

4892번: 숫자 맞추기 게임 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, n0으로 이루어져 있다. (0 < n0 < 1,000,000) 입력의 마지막 줄에는 0이 하나 주어진다. www.acmicpc.net 📌 풀이 입력은 여러 개의 테스트 케이스로 이루어져 있다 (while문) 입력의 마지막 줄에는 0이 하나 있다 (입력값이 0일 경우 break) 조건대로 따라 써준다. n1, n2 등등 그대로 따라 쓰기만 하면 된다. 문제는 출력인데 조건이 까다롭다. 테스트 케이스의 번호 + "." + "even" or "odd" + n4 string과 int가 마구 섞여 있어서 이렇게 + 형태로 묶어주면 원하는 출력값의 모양이 안 나온다. print(i, '. '..

🥧 Python/⚙️ 코딩테스트

[백준-Python] 4562번: No Brainer

4562번: No Brainer For each data set, there will be exactly one line of output. This line will be "MMM BRAINS" if the number of brains the zombie eats is greater than or equal to the number of brains the zombie requires to stay alive. Otherwise, the line will be "NO BRAINS". www.acmicpc.net 📌 풀이 영어로 써 있어서 흠칫했던 문제다. 별거 없고 테스트 케이스 수만큼 입력을 받되 첫 번째 수는 뇌의 수고 두 번째 수가 좀비의 수인데, 뇌보다 좀비가 더 많으면 노브레인이고 그렇지 않..

🥧 Python/⚙️ 코딩테스트

[백준-Python] 4101번: 크냐?

4101번: 크냐? 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 두 정수가 주어진다. 두 수는 백만보다 작거나 같은 양의 정수이다. 입력의 마지막 줄에는 0이 www.acmicpc.net 📌 풀이 입력은 여러 개의 테스트 케이스로 이루어져 있다고 하면 대개 변수를 설정하는 것보다 while 문이 많더라. 계속 입력을 받다가 특정 조건에서 브레이크를 걸리는 형태가 많은데 이번 문제도 그렇다. 두 수가 0 0 을 입력 받으면 입력을 멈추고 (break) 그렇지 않을 경우 1) 첫 번째 수가 두 번째 수보다 크면 Yes, 그렇지 않으면 No를 출력한다. ✅ 코드 while True : A, B = map(int, input().split()) if A == ..

🥧 Python/⚙️ 코딩테스트

[백준-Python] 2753번: 윤년

2753번: 윤년 연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서 www.acmicpc.net 📌 풀이 연도가 주어졌을 때 윤년이면 1, 아니면 0을 출력한다. 윤년의 조건은 1) 4의 배수이면서 100의 배수가 아닐 때 2) 400의 배수일 때 2가지이다. if문을 활용해서 해당 조건을 써주고 아닐 때에 0을 출력하게 해주면 된다. ✅ 코드 year = int(input()) if year % 4 == 0 and year % 100 != 0 or year % 400 == 0 : print(1) else : print(0)

🥧 Python/⚙️ 코딩테스트

[백준-Python] 2752번: 세 수 정렬

2752번: 세수정렬 숫자 세 개가 주어진다. 이 숫자는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 이 숫자는 모두 다르다. www.acmicpc.net 📌 풀이 숫자 3개가 주어지고 오름차순으로 출력되면 된다. sort를 사용하기 위해 리스트로 받았다. sort 메소드는 기존 변수를 아예 바꿔놓는 메소드라서 따로 정의가 안된다. li.sort() 를 하면 이미 li에서 오름차순으로 변형되어 있는데, lili = li.sort() 이런 식으로 다른 변수를 정해두면 None이라고 뜬다. 아무튼 li.sort()를 하면 [] 리스트의 형태가 나오기 때문에 우리가 원하는 출력값이 아니다. 이 괄호를 없애주기 위해(언패킹 하기 위해) *을 사용한다. 용어가 있었는데 뭐였는지 까먹었다. ✅ 코드 l..

🥧 Python/⚙️ 코딩테스트

[백준-Python] 11557번: Yangjojang of The Year

11557번: Yangjojang of The Year 입학 OT때 누구보다도 남다르게 놀았던 당신은 자연스럽게 1학년 과대를 역임하게 되었다. 타교와의 조인트 엠티를 기획하려는 당신은 근처에 있는 학교 중 어느 학교가 술을 가장 많이 먹는지 www.acmicpc.net 📌 풀이 한 번 풀었을 때는 하나도 이해 못하고 남의 코드 참고해서 적었던 건데 다시 한 번 풀어보니까 이제서야 이해가 된다! test_case 수 만큼 라운드가 구성되고, 라운드의 첫 줄에는 참여하는 학교 수를 입력한다. 이후에는 학교 이름, 소비한 술 양이 한 줄로 들어가야 하고 라운드 별로 술을 많이 소비한 '학교 이름'이 출력되면 된다. 비교하기 위해서 가장 쉽게 리스트로 열었고 학교 이름 = univname, 술 양 = drin..

🥧 Python/⚙️ 코딩테스트

[백준-Python] 10214번: Baseball

10214번: Baseball 경근이는 수업 과제의 일환으로 연세대학교의 역사를 조사하고 있었다. 케케묵은 도서관 구석에서 경근이가 발견한 것은 역대 연고전의 야구경기 실황 기록문서였다. 하지만 문서를 가지고 있 www.acmicpc.net 📌 풀이 첫 번째 줄에 테스트 케이스의 수를 적는다. 테스트 케이스 1번 당 9라운드가 이어지기 때문에 for문을 2번 줬다. 한 번은 테스트 케이스 입력 수만큼 + 그 밑은 이제 9번씩 굴러 가는 구조다. 9라운드가 끝날 따 = 테스트 케이스 다음 수로 이어질 때에는 점수가 리셋되어야 해서 연대, 고대 sum은 모두 0으로 설정해준다. 이 문제의 맹점은 이 sum을 어디에 두느냐 + if문을 어디에 두느냐였는데 + range(9)를 어떻게 표현하느냐였는데 일단 차례..

🥧 Python/⚙️ 코딩테스트

[백준-Python] 10103번: 주사위 게임

10103번: 주사위 게임 첫 라운드는 상덕이의 승리이다. 따라서 창영이는 6점을 잃게 된다. 두 번째 라운드는 두 사람의 숫자가 같기 때문에, 아무도 점수를 잃지 않고 넘어간다. 세 번째 라운드의 승자는 창영이이기 www.acmicpc.net 📌 풀이 첫째 줄에 라운드 수가 주어진다. 창영, 상덕의 점수 모두 100점으로 시작하며, 낮은 숫자가 나온 사람은 상대 주사위의 수만큼 점수를 잃는다. 창영 주사위, 상덕 주사위를 선언하고 조건문을 만든다. 만약 상덕 주사위가 더 크다면 창영 점수에서 상덕 주사위 수만큼 반복해서 빠지면 되고 반대로 창영 주사위가 더 크다면 상덕 점수에서 창영 주사위 수만큼 반복해서 빼주면 된다. 그리고 상덕, 창영의 점수를 출력한다. ✅ 코드 round = int(input()..

🥧 Python/⚙️ 코딩테스트

[백준-Python] 10162번: 전자레인지

10162번: 전자레인지 3개의 시간조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작시간에 더해진다. 버튼 A, B, C에 지정된 시간은 www.acmicpc.net 📌 풀이 내가 (그나마) 좋아하는 시간 계산 문제 (자매품: 알람시계, 인공지능 시계, 오븐 시계) 첫째 줄에 요리 시간 T를 input으로 선언한다. A, B, C는 5분, 1분, 10초인데 통일하기 위해서 모두 초 단위로 계산해준다. 300 / 60 / 10 A, B, C를 누른 횟수의 합이 항상 최소가 되어야 하기 때문에 큰 수 먼저 계산을 해준다. 예를 들어 T=100 일 때, B 1번 C 4번 하는 게 최소버튼 조작이다. (C를 10번 누르는 것..

썸머몽
'🥧 Python/⚙️ 코딩테스트' 카테고리의 글 목록 (2 Page)