전체 글 270

백준 1181번 단어 정렬 파이썬

https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 내 답안 import sys input = sys.stdin.readline x = list(set([input().rstrip() for _ in range(int(input().rstrip()))])) x.sort() x.sort(key = len) for i in x: print(i) N 개의 단어는 리스트 컨프리헨션으로 간단히 받았다. list(set( [] )) 를 한 이유는 ..

BOJ/Python 2022.04.11

백준 12865번 평범한 배낭 파이썬

https://www.acmicpc.net/problem/12865 12865번: 평범한 배낭 첫 줄에 물품의 수 N(1 ≤ N ≤ 100)과 준서가 버틸 수 있는 무게 K(1 ≤ K ≤ 100,000)가 주어진다. 두 번째 줄부터 N개의 줄에 거쳐 각 물건의 무게 W(1 ≤ W ≤ 100,000)와 해당 물건의 가치 V(0 ≤ V ≤ 1,000) www.acmicpc.net 내 답안 import sys input = sys.stdin.readline N, K = map(int, input().rstrip().split()) dp = [0] * (K + 1) for _ in range(N): W, V = map(int, input().rstrip().split()) for i in range(K, W -..

BOJ/Python 2022.03.31

백준 7576번 토마토 파이썬 BFS

https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 내 답안 from collections import deque import sys input = sys.stdin.readline M, N = map(int, input().rstrip().split()) tomato = [list(map(int, input().rstrip().split())) for i in range(N)] date = [[0] * M for _ in rang..

BOJ/Python 2022.03.30

백준 1259번 팰린드롬수 파이썬

https://www.acmicpc.net/problem/1259 1259번: 팰린드롬수 입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 1 이상 99999 이하의 정수가 주어진다. 입력의 마지막 줄에는 0이 주어지며, 이 줄은 문제에 포함되지 않는다. www.acmicpc.net 내 답안 import sys input = sys.stdin.readline while True: x = input().rstrip() if x == '0': break else: cnt = 0 l = len(x) // 2 for i in range(l): if x[i] == x[-(i + 1)]: # 순차적으로 탐색 cnt += 1 if l == cnt: print('yes') else: print('no') ..

BOJ/Python 2022.03.29

백준 2292번 벌집 파이썬

https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 내 답안 import sys input = sys.stdin.readline N = int(input()) if N == 1: print(1) else: for i in range(1, N): if 3*(i**2) - 3*i + 2

BOJ/Python 2022.03.28

백준 2164번 카드2 파이썬

https://www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 내 답안 from collections import deque import sys N = int(sys.stdin.readline().rstrip()) q = deque([i for i in range(1, N + 1)]) while (len(q) != 1): q.popleft() if len(q) == 1: break else: q.append(q.popleft()) print(q[0]) 파이썬..

BOJ/Python 2022.03.25

[프로그래머스] 숫자 문자열과 영단어 파이썬

https://programmers.co.kr/learn/courses/30/lessons/81301?language=python3 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 2021 카카오 채용연계형 인턴십 내 답안 def solution(s): words = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine'] x = '' result = '' for i in s: if i.isalpha(): x +..

프로그래머스 2022.03.24

백준 10816번 숫자 카드 2 파이썬

https://www.acmicpc.net/problem/10816 10816번: 숫자 카드 2 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 내 답안 import sys from bisect import bisect_left, bisect_right input = sys.stdin.readline N = int(input()) N_list = sorted(list(map(int, input().split()))) M = int(input()) M_list = list(map(int, input().sp..

BOJ/Python 2022.03.23

백준 11055번 가장 큰 증가 부분 수열 파이썬

https://www.acmicpc.net/problem/11055 11055번: 가장 큰 증가 부분 수열 수열 A가 주어졌을 때, 그 수열의 증가 부분 수열 중에서 합이 가장 큰 것을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} 인 경우에 합이 가장 큰 증가 부분 수 www.acmicpc.net 내 답안 import sys input = sys.stdin.readline N = int(input()) A = list(map(int, input().split())) dp = [0] * N dp[0] = A[0] for i in range(1, N): for j in range(i): if A[i] > A[j]: dp[i] = max..

BOJ/Python 2022.03.22
반응형
목차(index)