![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/eEXt4j/btsfpecBQS1/VCjquDZqrfAbF91URe7yQK/img.png)
문제 링크 2720번: 세탁소 사장 동혁 각 테스트케이스에 대해 필요한 쿼터의 개수, 다임의 개수, 니켈의 개수, 페니의 개수를 공백으로 구분하여 출력한다. www.acmicpc.net 문제 풀이 t = int(input()) for _ in range(t): c = int(input()) for i in [25, 10, 5, 1]: print(c // i, end=" ") c %= i *key point: 반복문을 활용하면 쉽게 해결할 수 있다. 반복문의 범위를 대부분 range함수를 이용해서 설정했지만, 원하는 값에 대해서만 하고 싶으면 리스트를 사용하면 된다.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/buCGuh/btserf92jX0/yHZ4QMjN368qkNJ3px3HvK/img.png)
문제 링크 11005번: 진법 변환 2 10진법 수 N이 주어진다. 이 수를 B진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 www.acmicpc.net 문제 풀이 num_list = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" n, b = map(int, input().split()) answer = "" while n != 0: answer = num_list[n % b] + answer n //= b print(answer) *key point: 2745번 문제처럼 0~Z까지를 담은 문자열을 이용한다.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/daNy8H/btsemBs9N1V/I5vZPhbUl8qG1wnRIAbVcK/img.png)
문제 링크 2745번: 진법 변환 B진법 수 N이 주어진다. 이 수를 10진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 www.acmicpc.net 문제 풀이 num_list = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" n, b = input().split() answer = 0 for i, num in enumerate(n[::-1]): answer += int(b) ** i * num_list.index(num) print(answer) *key point: 0부터 Z까지가 포함된 문자열을 활용한다. 이 문자열의 index가 곧 값이 됨을 이용한다. *더 공부한 내용..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/lDhB5/btsc9cnL0ZJ/0eLVBw3pxOX0Jbjkka8tX1/img.png)
문제 링크 10798번: 세로읽기 총 다섯줄의 입력이 주어진다. 각 줄에는 최소 1개, 최대 15개의 글자들이 빈칸 없이 연속으로 주어진다. 주어지는 글자는 영어 대문자 ‘A’부터 ‘Z’, 영어 소문자 ‘a’부터 ‘z’, 숫자 ‘0’ www.acmicpc.net 문제 풀이 board = [] max_len = 0 for i in range(5): row = list(input()) if len(row) > max_len: max_len = len(row) board.append(row) for i in range(5): if max_len > len(board[i]): for _ in range(max_len - len(board[i])): board[i].append("-") for j in range..
문제 링크 25206번: 너의 평점은 인하대학교 컴퓨터공학과를 졸업하기 위해서는, 전공평점이 3.3 이상이거나 졸업고사를 통과해야 한다. 그런데 아뿔싸, 치훈이는 깜빡하고 졸업고사를 응시하지 않았다는 사실을 깨달았다! 치 www.acmicpc.net 문제 풀이 GPT = 0 CT = 0 for i in range(20): subject, credit, grade = input().split() if (grade != "P"): CT += float(credit) match grade: case "A+": grade = 4.5 case "A0": grade = 4.0 case "B+": grade = 3.5 case "B0": grade = 3.0 case "C+": grade = 2.5 case "C0"..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/JbfnQ/btscYNAwXmV/zt9n0Cw9xtuePvSkRxYo71/img.png)
문제 링크 10812번: 바구니 순서 바꾸기 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 순서대로 적혀져 있다. 바구니는 일렬로 놓여져 있고, 가장 왼쪽 바구니를 1번째 바구니, 그 다음 바구니를 2 www.acmicpc.net 문제 풀이 n, m = map(int, input().split()) answer = [i for i in range(1, n+1)] for _ in range(m): i, j, k= map(int, input().split()) answer = answer[:i-1] + answer[k-1:j] + answer[i-1:k-1] + answer[j:] print(' '.join(str(n) for n in answer)) *key point..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/d4bjzU/btscQP7DUsv/awE2gGKSTsUhPD0AZKUgqk/img.png)
문제 링크 2444번: 별 찍기 - 7 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. www.acmicpc.net 문제 풀이 n = int(input()) for i in range(1,n+1): print(" "*(n-i) + "*"*(2*i-1)) for i in range(n-1, 0, -1): print(" "*(n-i) + "*"*(2*i-1)) *key point: 별의 개수가 증가하는 부분과 감소하는 부분으로 나누고 for문을 활용한다. range 함수의 범위를 역순으로 지정하고 싶을 때는 세번째 파라미터로 음수를 넣어준다.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/unWSr/btscPbI6t8a/bLcjk4SBxIKLdiEglq35n0/img.png)
문제 링크 11718번: 그대로 출력하기 입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시 www.acmicpc.net 문제 풀이 import sys s = sys.stdin.readlines() for i in s: print(i.rstrip()) *key point: sys 모듈의 readlines()를 이용하면 개행문자를 포함하여 input 값을 받을 수 있다. 입력된 개행 문자는 rstrip() 메서드로 없애준다. *comment: 문자열 자체가 문제가 아니라 입력값의 개수가 정해져 있지 않다는 점이 이 문제의 핵심이었다. 위와 같은 방법으로 풀..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/c06MLG/btscQzoSRwc/jDk6Q0RVpn4Q4KbHIshKqK/img.png)
문제 링크 9086번: 문자열 입력의 첫 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 한 줄에 하나의 문자열이 주어진다. 문자열은 알파벳 A~Z 대문자로 이루어지며 알파벳 사이에 공백은 없으 www.acmicpc.net 문제 풀이 t = int(input()) for _ in range(t): s = input() print(s[0],s[-1], sep="") *key point: index에 음수를 넣으면 뒤에서 부터 요소를 찾을 수 있다.
- Total
- Today
- Yesterday
- 20920
- 25192
- 24313
- Python
- SQL
- programmer
- 코육대
- 5597
- Wil
- 2903
- 26069
- 항해 플러스
- 벡준
- 25501
- 2738
- 항해+
- 13241
- 2053
- 13909
- Programmers
- 4134
- 24060
- 1269
- 24723
- 17103
- 2587
- 10807
- MySQL
- 백준
- til
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |