목록분류 전체보기 (268)
정화 코딩

1. LCS 알고리즘 설명어떤 두 문자열이 얼마나 유사한지를 수치화하기 위해 longest common subsequence(LCS)를 구한다. LCS란 공통 문자열 중 길이가 가장 긴 문자열을 말한다. 이 때 공통 문자열을 이루는 문자들 사이에 다른 문자열이 있어도 상관없으며 공통 문자열을 이루는 문자들의 순서만 동일하면 된다. LCS가 길수록 두 문자열이 유사도가 높다고 할 수 있다. 이 LCS의 길이와 LCS를 구하는 알고리즘이 LCS 알고리즘이며, 이를 직접 코드로 구현해보고자 한다. 2. LCS 알고리즘 구현 코드 (python)입력: 첫번째 줄에 문자열 X를 입력하고 두번째 줄에 문자열 Y를 입력한다. (문자열을 입력할 때는 문자와 문자 사이에 공백을 두고 입력한다.) 출력: 첫번째 줄에 LC..

087. 2×n 타일링 (백준 11726번) https://www.acmicpc.net/problem/11726 import sysinput = sys.stdin.readlinem = 10007n = int(input())# dp: 순열dp = [[0 for _ in range(n + 1)] for _ in range(n + 1)]dp[0][0] = 1for i in range(1, n + 1): dp[i][0] = dp[i][i] = 1 for j in range(1, i): dp[i][j] = dp[i - 1][j - 1] + dp[i - 1][j]ans = 0i = nj = 0while i >= j: ans = (ans + dp[i][j]) % m i -= 1 ..

5/3. 랜선 자르기 (백준 1654번) https://www.acmicpc.net/problem/1654 //C++#include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int k, n; cin >> k >> n; vector data(k); for (int i = 0; i > data[i]; } long long l = 0; long long r = data[0] + 1; while (l = n) l = m + 1; else if (cnt 전형적인 매개변수탐색 문제인 것 ..

A. 돌 게임 (백준 9655번) https://www.acmicpc.net/problem/9655 #pythonimport sysinput = sys.stdin.readlinen = int(input())if n % 2 == 0: print("CY")else: print("SK")규칙을 찾으려고 몇 개 적어봤는데, 한 8까지 적어보니까 그냥 n이 홀수인 경우에는 상근이가 이기고 n이 짝수인 경우에는 창영이가 이기는 것 같은데..?? 라는 생각이 들었다. 뭔가 아닐 것 같지만 일단 한번 제출해봤는데 이왜진... (정답) B. 수열 (백준 2491번) https://www.acmicpc.net/problem/2491 #pythonimport sysinput = sys.stdin.readline..

4/9. 통계학 (백준 2108번) https://www.acmicpc.net/problem/2108 //C++ #include #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, sum = 0; cin >> n; vector data(n); for (int i = 0; i > data[i]; sum += data[i]; } sort(data.begin(), data.end()); int maxCnt = 0; vector cnt(8001, 0); for (int x: data) { cnt[x + 4000]++..

11-1. 동적 계획법 알아보기 084. 1로 만들기 (백준 1463번) https://www.acmicpc.net/problem/1463 import sysinput = sys.stdin.readlinen = int(input())num = [0 for _ in range(n + 1)]for i in range(2, n + 1): num[i] = num[i - 1] + 1 if i % 2 == 0: num[i] = min(num[i], (num[i // 2] + 1)) if i % 3 == 0: num[i] = min(num[i], (num[i // 3] + 1))print(num[n])이전에 풀었던 문제. 간단한 다이나믹 문제였다. (정답) 085. 퇴사 (..

A. 베라의 패션 (백준 15439번) https://www.acmicpc.net/problem/15439 #pythonimport sysinput = sys.stdin.readlinen = int(input())ans = n * (n - 1)print(ans)(정답) C. 격자상의 경로 (백준 10164번) #pythonimport sysinput = sys.stdin.readlinen, m, k = map(int, input().split())dp = [[0 for _ in range(n + m - 1)] for _ in range(n + m - 1)]ans = 0dp[0][0] = 1for i in range(1, n + m - 1): dp[i][0] = dp[i][i] = 1 for..

Visual Studio 콘솔창 유지 안 되는 오류? 컴파일러 수업에서 .l 파일을 flex를 통해 lex.yy.c 파일을 만든 후 visual studio에서 실행시켜 제대로 작동하는지 확인하는 과제가 나왔다. lex.yy.c 파일을 만드는 것까지는 문제없이 잘 되는데, visual studio에서 실행이 제대로 안 된다. 정확히 말하면 디버그하지 않고 실행(Ctrl + F5)을 눌러도 아무런 반응이 없었다. 이 과목이 매 수업마다 팀플 과제가 있는 수업이고 이전 수업 때도 이 오류 때문에 실행을 못했다. 더 이상 피해를 끼칠 수 없으니 오늘 무조건 해결해야 한다..!!!!!!!! 지난번에 실행 했을 때는 아예 콘솔창이 안 뜨는 건줄 알았는데, 오늘 다시 유심히 보니 콘솔창은 뜨는데 바로 닫히는 것 같..