수학(2)
-
백준 9461 - 파도반 수열 (Python)
문제 https://www.acmicpc.net/problem/9461 9461번: 파도반 수열 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 www.acmicpc.net 풀이 n = int(input()) memo = {} memo[1] = 1 memo[2] = 1 memo[3] = 1 memo[4] = 2 memo[5] = 2 def a(i): if i not in memo: memo[i] = a(i-1) + a(i-5) return memo[i] for i in range(n): print(a(int(input()))) 단순한 DP 문제이다. N이 1~5일때는..
2024.02.13 -
백준 2658 - 직각이등변삼각형찾기 (Python)
문제 https://www.acmicpc.net/problem/2658 2658번: 직각이등변삼각형찾기 입력된 모양이 직각이등변 삼각형을 이루는 경우에는 세 꼭짓점의 위치를 출력하고, 그렇지 않은 경우에는 0을 출력한다. 각 꼭짓점의 위치를 한 줄에 두 개의 수로 출력한다. 두 수는 하나의 빈 www.acmicpc.net 풀이 직각 이등변 삼각형을 찾는 문제이다. 해당 문제에서 나올 수 있는 직각 이등변 삼각형은 아래의 기본 모양을 각각 4방향으로 회전한 삼각형들이다. 즉 8개의 삼각형을 비교 하는 코드를 구현해주어야 한다. 처음에 풀 때 오른쪽 모양의 직각이등변 삼각형을 떠올리지 못해서 시간을 많이 잡아먹었다. 최종적으로 작성한 코드는 아래와 같다. d = [] for i in range(10): d...
2024.02.05