3613번: Java vs C++ Java 예찬론자 김동규와 C++ 옹호가 김동혁은 서로 어떤 프로그래밍 언어가 최고인지 몇 시간동안 토론을 하곤 했다. 동규는 Java가 명확하고 에러가 적은 프로그램을 만든다고 주장했고, 동혁이는 www.acmicpc.net 코드 input_str = input() if input_str[0] == '_' or input_str[0].isupper() or input_str[-1] == '_': print("Error!") exit() if input_str.count('_') > 0: # C++ => Java new_str = '' underbar = False for i in range(len(input_str)): if input_str[i].isupper(): ..
전체 글
28075번: 스파이 첫째 줄에는 민겸이가 임무를 수행하는 총 일수 $N$과 민겸이가 얻고 싶은 최소 기여도 $M$이 공백으로 구분되어 주어진다. 둘째 줄에 민겸이가 정보 수집 임무를 수족관, 시청, 학교에서 수행했 www.acmicpc.net 코드 n, m = map(int, input().split()) progress = list(map(int, input().split()))+list(map(int, input().split())) ans = 0 def recursion(d, prev, total): global ans if d == n+1: if total >= m: ans += 1 return for work in range(2): for place in range(3): if place ==..
19948번: 음유시인 영재 감수성이 뛰어난 음유시인 영재는 일상생활 중에 번뜩 시상이 떠오르곤 한다. 하지만 기억력이 좋지 못한 영재는 시상이 떠오르면 그 순간 컴퓨터로 기록해야만 안 까먹는다! 시는 대문자, 소 www.acmicpc.net 코드 input_str = input() spaces = int(input()) alphabets = list(map(int, input().split())) prev = '-' title = "" for i in range(len(input_str)): if input_str[i] == prev: # 앞글자와 같은 경우 continue else: # 앞글자와 같지 않은 경우 if input_str[i] == ' ': # 공백 spaces -= 1 else: # 알..
18513번: 샘터 첫째 줄에 자연수 N과 K가 공백을 기준으로 구분되어 주어진다. (1 ≤ N, K ≤ 100,000) 둘째 줄에 N개의 샘터의 위치가 공백을 기준으로 구분되어 정수 형태로 주어진다. (-100,000,000 ≤ 샘터의 위치 ≤ www.acmicpc.net 코드 from collections import deque n, k = map(int, input().split()) waters = list(map(int, input().split())) q = deque() visited = set() # 이미 방문한 위치 for w in waters: visited.add(w) # 샘터 방문 처리 q.append((w, 0)) houses_num = 0 # 지은 집의 개수 ans = 0 # 불..
1652번: 누울 자리를 찾아라 첫째 줄에 방의 크기 N이 주어진다. N은 1이상 100이하의 정수이다. 그 다음 N줄에 걸쳐 N개의 문자가 들어오는데 '.'은 아무것도 없는 곳을 의미하고, 'X'는 짐이 있는 곳을 의미한다. www.acmicpc.net 코드 n = int(input()) room = [input() for _ in range(n)] # 가로(행) row = 0 for i in range(n): tmp = 0 for j in range(n): if room[i][j] == 'X': if tmp >= 2: row += 1 tmp = 0 else: tmp += 1 if tmp >= 2: row += 1 # 세로(열) col = 0 for j in range(n): tmp = 0 for i ..
10815번: 숫자 카드 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 코드 n = int(input()) s = set(map(int, input().split())) m = int(input()) for i in map(int, input().split()): if i in s: print(1, end=" ") else: print(0, end=" ") 숫자 카드의 수들을 집합에 넣고, 이 수를 갖고 있는지 없는지 찾아서 출력해주면 된다. 다른 방법으로는 이분탐색을 이용하는 방법이 있다. 바로 2번째..