https://www.acmicpc.net/problem/1475 1475번: 방 번호 첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수 또는 0이다. www.acmicpc.net import sys N = str(sys.stdin.readline()) N = N.replace('9', '6') res = 0 for i in range(9): cnt = N.count(str(i)) if i == 6: cnt = (cnt // 2 + cnt % 2) if res < cnt: res = cnt print(res)
https://www.acmicpc.net/problem/3190 3190번: 뱀 문제 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. www.acmicpc.net import sys from collections import deque N = int(sys.stdin.readline()) s = [[0] * N for _ in range(N)] for _ in range(int(sys.stdin.readline())): r, c = map(int, sys.stdin.readline().split()) s[r-1][c-1] = 1 change = [] L = int..
https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 첫째 줄에 1번 톱니바퀴의 상태, 둘째 줄에 2번 톱니바퀴의 상태, 셋째 줄에 3번 톱니바퀴의 상태, 넷째 줄에 4번 톱니바퀴의 상태가 주어진다. 상태는 8개의 정수로 이루어져 있고, 12시방향부터 � www.acmicpc.net import sys, collections s = [] for _ in range(4): s.append(collections.deque(list(input()))) K = int(sys.stdin.readline()) R = [list(map(int, sys.stdin.readline().split())) for _ in range(K)] #왼쪽 톱니바퀴 확인 def left(num, ..
https://www.acmicpc.net/problem/14500 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변� www.acmicpc.net * Python3에서는 시간초과 / PyPy3으로 통과 import sys N, M = map(int, sys.stdin.readline().split()) s = [list(map(int, sys.stdin.readline().split())) for _ in range(N)] t = [ [[0, 1], [0, 2], [0, 3]], #type1 [[1, 0], [2, 0], [3, 0]], ..
https://www.acmicpc.net/problem/9251 9251번: LCS LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc.net s1 = list(input()) s2 = list(input()) s1_len = len(s1) s2_len = len(s2) dp = [[0] * (s2_len+1) for _ in range(s1_len + 1)] for i in range(s1_len): for j in range(s2_len): if s1[i] == s2[j]: dp[i+1][..
https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net import sys from itertools import combinations N, M = map(int, sys.stdin.readline().split()) s = [] for _ in range(N): s.append(list(map(int, sys.stdin.readline().split()))) chicken = [] #모든 치킨집의 위치 for i in rang..
https://www.acmicpc.net/problem/14889 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net import sys from itertools import combinations N = int(sys.stdin.readline()) s = [] for _ in range(N): s.append(list(map(int, sys.stdin.readline().split()))) people = [i for i in range(N)] com_people = list(combinations(people, N//2)) l..
https://www.acmicpc.net/problem/6064 6064번: 카잉 달력 문제 최근에 ICPC 탐사대는 남아메리카의 잉카 제국이 놀라운 문명을 지닌 카잉 제국을 토대로 하여 세워졌다는 사실을 발견했다. 카잉 제국의 백성들은 특이한 달력을 사용한 것으로 알려져 있다. 그들은 M과 N보다 작거나 같은 두 개의 자연수 x, y를 가지고 각 년도를 와 같은 형식으로 표현하였다. 그들은 이 세상의 시초에 해당하는 첫 번째 해를 로 표현하고, 두 번째 해를 로 표현하였다. 의 다음 해를 표현한 것을 이라고 하자. 만일 www.acmicpc.net import sys T = int(sys.stdin.readline()) def gcd(a, b): mod = a%b while mod > 0: a = b..