백준
-
[🤷♀️ 백준] 11727번. 2xN 타일링 2Algorithm/1일 1코테 2020. 11. 13. 14:26
⛄ 문제 www.acmicpc.net/problem/11727 11727번: 2×n 타일링 2 2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다. www.acmicpc.net ⛄ 답 N = int(input()) a= [0, 1, 3] for i in range(3, 1002): a.append(a[i-1] + a[i-2]*2) print(a[N]%10007) 다이나믹 프로그래밍으로 푸는 문제 점화식 세울 때 [마지막으로 들어가는 도형] 기준으로 잡기! 1. 가로가 n-1 남았을 때 들어갈 수 있는 도형은 1x2 밖에 없다. 2. 가로가 n-2 만큼 남았을 때 들어갈 수 있는 도형은 두 가지가 있다. 2..
-
[🤷♀️ 백준] 11726번. 2xn 타일링 (PYTHON)Algorithm/1일 1코테 2020. 11. 13. 13:10
📌 문제 www.acmicpc.net/problem/11726 11726번: 2×n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. www.acmicpc.net 📌 답 # 런타임 에러 N = int(input()) a = [0 for _ in range(N+1)] a[0] = 0 a[1] = 1 a[2] = 2 for i in range(3, len(a)): a[i] = a[i-1] + a[i-2] print(a[N]%10007) # 수정 N = int(input()) a = [0,1,2] for i in range(3, 1001): a.append(a[i-1] + a[i-2]) ..
-
[🤷♀️ 백준] 1463번. 1로 만들기 (PYTHON)Algorithm/1일 1코테 2020. 11. 13. 12:24
📌 문제 및 문제설명 www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 📌 답 n = int(input()) #1 a = [0 for _ in range(n+1)] #2 for i in range(2, len(a)): #3 a[i] = a[i-1] + 1 if i%3 == 0: a[i] = min(a[i], a[i//3]+1) if i%2 == 0: a[i] = min(a[i], a[i//2]+1) print(a[n]) 다이나믹 프로그래밍으로 푸는 문제! 1. input을 통해 입력값을 받는다. 2. n+1만큼 크기의 리스트를 만들어준다! 이 리스트엔 인덱스 숫자가 1이 되..
-
[백준알고리즘] 10951Algorithm/1일 1코테 2020. 8. 26. 22:53
내가 작성한 코드 for i in range(0, int(input()): a, b = map(int, input().split()) list.append(a) list.append(b) for i in range(0, len(list), 2): print(list[i] + list[i+1]) ㅎㅎ... 코드 진짜 개구림.. 문제 이해 잘못해서 일단 input 쫙 출력하고 output 쫙 나와야되는줄 알았다 ㅎㅎ.. input은 너무 느려서? 런타임 에러 발생 그래서 찾아보니 sys를 사용해보란다 import sys for line in sys.stdin: a,b = map(int, line.split()) print(a+b) sys.stdin.readline -- 하나씩 입력 sys.stdin -- 여..
-
[백준알고리즘] 1000번 - A+BAlgorithm/1일 1코테 2020. 8. 26. 21:57
흑흑 ㅜㅜ 교육 왜 들었지.. 후회될만큼 자괴감이 느껴진다 ㅎ A, B를 입력받아 A+B를 출력하는 문제다! int(input())으로 해도 안되길래 아니 어떻게 하라는겨~~~ 하다 답을 봤는데 ㅎ A, B = map(int, input().split()) print(A+B) 와.. map을 저렇게도 쓸 수 있단 걸 처음 앎 ㅎㅎ input을 두개 받을 수 있다는 것도 그렇고^^~ 자세한 얘기는 여기! https://dojang.io/mod/page/view.php?id=2179 파이썬 코딩 도장: 6.4 입력 값을 변수 두 개에 저장하기 지금까지 input 한 번에 값 하나만 입력받았습니다. 그럼 input 한 번에 값을 여러 개 입력받으려면 어떻게 해야 할까요? 이때는 input에서 split을 사용..