목록BOJ (95)
홍우진의 개발 일기장
문제 링크 https://www.acmicpc.net/problem/2163 2163번: 초콜릿 자르기 정화는 N×M 크기의 초콜릿을 하나 가지고 있다. 초콜릿은 금이 가 있는 모양을 하고 있으며, 그 금에 의해 N×M개의 조각으로 나눠질 수 있다. 초콜릿의 크기가 너무 크다고 생각한 그녀는 초콜릿 www.acmicpc.net 풀이 코드 n,m=map(int, input().split()) print(n*m-1) 코드 해석 간단한 수학 공식을 이용하면 해결 할 수 있다. n-1 + (m-1)*n
문제 링크 https://www.acmicpc.net/problem/2563 2563번: 색종이 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 www.acmicpc.net 풀이 코드 arr = [[0]*100 for _ in range(100)] for _ in range(int(input())): m, n = map(int, input().split()) for i in range(m, m+10): for j in range(n, n+10): arr[i][j] = 1 ans = 0 for i in arr: ans += i.count(1) print(ans)..
문제 링크 https://www.acmicpc.net/problem/14912 14912번: 숫자 빈도수 자연수 n (1 ≤ n ≤ 100,000)과 한 자리 숫자 d(0~9)가 첫째 줄에 주어진다. www.acmicpc.net 풀이 코드 n,m = map(int,input().split()) a = '' for i in range(1, n+1): a = a + str(i) print(a.count(str(m))) 코드 해석 수를 문자열로 길게 나열한다. ex) 12345678910111213 이후 문자열에서 count를 사용하여 m의 개수를 출력한다.
문제 링크 https://www.acmicpc.net/problem/14582 14582번: 오늘도 졌다 첫 번째 줄에는 9개의 정수가 주어지는데, 오늘 경기에서 울림 제미니스가 1회 초, 2회 초, ..., 9회 초에 낸 득점이 주어진다. 두 번째 줄에도 9개의 정수가 주어지는데, 스타트링크 걸리버스가 1회 www.acmicpc.net 풀이 코드 a = list(map(int, input().split())) b = list(map(int, input().split())) asum, bsum = 0, 0 cnt = 0 for i in range(9): asum += a[i] if asum > bsum and cnt == 0: cnt += 1 if asum < bsum and cnt == 1: cnt +..
문제 링크 https://www.acmicpc.net/problem/16212 16212번: 정열적인 정렬 형준이는 수열을 하나 가지고 있다. 형준이는 수열을 정열적으로 정렬해보려 한다. 과연, 정렬할 수 있을까? www.acmicpc.net 풀이 코드 n = int(input()) m = list(map(int,input().split())) m.sort() print(*m) 코드 해석 수열을 받아서 띄어쓰기로 구분하여 리스트 형식으로 저장한다. 그 후 정렬을 하고 출력한다.
문제 링크 https://www.acmicpc.net/problem/14405 14405번: 피카츄 피카츄는 "pi", "ka", "chu"를 발음할 수 있다. 따라서, 피카츄는 이 세 음절을 합친 단어만 발음할 수 있다. 예를 들면, "pikapi"와 "pikachu"가 있다. 문자열 S가 주어졌을 때, 피카츄가 발음할 수 있는 문 www.acmicpc.net 풀이 코드 s = input() s = s.replace("pi", " ") s = s.replace("ka", " ") s = s.replace("chu", " ") if len(s.strip()) == 0: print("YES") else: print("NO") 코드 해석 문자열을 받은 뒤 replace를 이용하여 pi,ka,chu를 공백으로..
문제 설명 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 n이 주어진다. n은 20보다 작거나 같은 자연수 또는 0이다. 출력 첫째 줄에 n번째 피보나치 수를 출력한다. 작성 코드 f = [0,1] n = int(input()) i = 2 while(n >=..