[Coding Test]
[백준] 2798 파이썬(python) : 블랙잭
2790번 : 파이썬 입력값 m에 가장 가까우면서도 넘지 않는값을 구하는 문제다. 브루트포스로 풀어야 한다는 생각이 들었다. 3중 for문으로 O(n3)으로 해결하는데 입력값 n이 100을 넘지 않기 때문에 1,000,000 최대값이 백만이어서 1초안에 시간을 넘길 수 있다. n, m = map(int, input().split())array = list(map(int, input().split()))result = 0sum = 0for i in range(len(array)): #1 for j in range(i+1, len(array)): #2 for k in range(j+1, len(array)): #3 sum = array[i] + array[j] + ..
[백준] 2231 파이썬(python) : 분해합
https://www.acmicpc.net/problem/2231 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net 어디서 본것 같은 문제다. 좀 더 복습을 여러번 해서 기본유형을 숙달해야겠다. import sys n = int(sys.stdin.readline()) for i in range(1, n+1): #1 tmp = i #2 for j in str(i): #3 tmp += int(j) #4 if tmp == n: #5 print(i) break else: #6 print(0..
[백준] 1018 파이썬(python) : 체스판 다시 칠하기 - (나중에)
https://www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 이해하는데 상당히 애먹었다. 아직 그래프를 그려주는 문제는 복잡해서 어려운가보다. 난이도는 실버4지만 체감 난이도는 골드 이상이었다. 이러한 문제를 많이 풀어본 고수들 입장에서는 실버4 난이도라고 느꼈다는것이니 나도 나중에 슉슉 풀 수 있는 날을 위해 포스팅을 해보려고 한다. n, m = map(int, input().split()) board = [ ] for _ in range(n): ..
[백준] 1436 파이썬(python) : 영화감독 숌
https://www.acmicpc.net/problem/1436 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net import sys n = int(sys.stdin.readline()) target, cnt, tmp = '666', 1, 0 while True: if target in str(cnt): #1 tmp += 1 if tmp == n: #2 print(cnt) break cnt += 1 #3 브루트포스 문제다. 제한시간과 입력값의 범위를 유심히 봐야하는데 제한시간이 2초이고 입력값 n의 범위가 ..
[백준] 17478 파이썬(python) : 재귀함수가 뭔가요?
https://www.acmicpc.net/problem/17478 17478번: 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대 www.acmicpc.net import sys n = int(sys.stdin.readline()) def recursion(depth): #1 print('____' * depth + "\"재귀함수가 뭔가요?\"") if depth == n: #2 print('____' * depth + "\"재귀함수는 자기 자신을 호출하는 함수라네\"") else: print('____' * depth + "\"잘 들어보게. 옛날옛날..
[백준] 10870 파이썬(python) : 피보나치 수 5
https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net def fibonacci(n): if n == 0: return 0 if n == 1 or n == 2: return 1 else: return fibonacci(n-1) + fibonacci(n-2) n = int(input()) print(fibonacci(n)) 유명한 문제 피보나치 수열 문제다. 재귀함수를 이용해서 푸는 문제인데 n이 0이면 리턴 값이..