[ 알고리즘 ]
[백준] 17968. Fire on Field
📌문제 https://www.acmicpc.net/problem/17968 🎖️난이도 ✔️풀이 A = [1, 1] n = int(input()) for i in range(2, n+1): tmp_Ai = 1 k = 1 while i - 2*k >= 0: # 모든 k 확인 용 if tmp_Ai - A[i-k] != A[i-k] - A[i-k*2]: k += 1 continue tmp_Ai += 1 k = 1 continue A.append(tmp_Ai) print(A[n])
[백준] 14954. Happy Number
📌문제 https://www.acmicpc.net/problem/14954 🎖️난이도 ✔️풀이 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include #include #include using namespace std; int n, i; bool visited[730]; // false int main() { cin >> n; // 메모리 초과 해결을 위해 [730] 넘는 숫자들 먼저 1회 처리 int first_sum = 0; int first_ii = n; while (first_ii != 0) { first_sum += pow(first_ii % 10, 2); first_ii /= 10..
[백준] 13567. 로봇
📌문제 https://www.acmicpc.net/problem/13567 🎖️난이도 ✔️풀이 # 정답 M, n = list(map(int, input().split())) commands = [] [i, j] = [0, 0] dir = [[0,1], [-1,0], [0, -1], [1, 0]] # (동, 남, 서, 북) tmp_idx = 0 for _ in range(n): commands.append(input()) check_answer = 1 for command in commands: if i >= M or j >= M or i < 0 or j < 0: break else: if command[0] == 'M': i += dir[tmp_idx][1]*int(command[5:]) j += dir..
[백준] 11504. 돌려 돌려 돌림판!
📌문제 https://www.acmicpc.net/problem/11504 🎖️난이도 ✔️풀이 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include #include #include #include // operator typeid using namespace std; int T, N, M; int X = 0; int Y = 0; int pan[101] = {-1,}; int cnt = 0; vector cnt_v; int main() { cin >> T; for (int n = 0; n > N >> M; int tmp; for (int i = M; i > 0;..
[백준] 11501. 주식
📌문제 https://www.acmicpc.net/problem/11501 🎖️난이도 ✔️풀이 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include #include #include #include // operator typeid using namespace std; int T(0); int N(0); long long solution(vector day) { long long answer(0); long long max_val = *max_element(day.begin(), day.end()); long long max_index(0); for (int i = 0; i < N; i++)..