본문 바로가기

전체 글

(131)
43. 뮤직비디오(이분검색 응용) (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★★★★☆ #include #include using namespace std; int main() { int n, m, lt = 1, rt = 0, mid, answer = 0, sum = 0; scanf("%d %d", &n, &m); vector dvd(n+1, 0); for(int i = 1; i < dvd.size(); i++) { scanf("%d", &dvd[i]); rt += dvd[i]; } vector record; while(lt
42. 이분검색 (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★☆☆☆☆ #include #include #include using namespace std; int main() { int n, m, low, high; scanf("%d %d", &n, &m); vector num(n+1,0); for(int i = 1; i m) high = mid -1; else if(num[mid] < m) low = mid + 1; } printf("%d", mid); r..
41. 연속된 자연수의 합 (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★★★★☆ #include #include using namespace std; int main() { int n, p1, p2, cnt = 0; scanf("%d", &n); vector num(n, 0); for(int i = 1; i 0 && p2 > 0) { int sum = 0; for(int i = p2; i >= p1; i--) sum += num[i]; if(sum > n) { p1--; p2--; } else if(sum == n) { for(int i = p1; i 0) { a++; n -= a; if(n % a == 0) { for(int i = 1; i < a; i++) { printf("%d + ..
40. 교집합(투포인터 알고리즘) (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★★☆☆☆ #include #include #include using namespace std; int main() { int n, m; scanf("%d", &n); vector N(n, 0); for(int i = 0; i < n; i++) scanf("%d", &N[i]); scanf("%d", &m); vector M(m, 0); for(int i = 0; i < m; i++) scanf("%d", &M[i]); vector count(21470000, 0); vector answer; for(int i = 0; i < n; i++) count[N[i]]++; for(int i = 0; i < m; i++) { if(count[M[i]] != 0) answer.push_back(M[i]); } sort(an..
39. 두 배열 합치기(병합정렬) (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★☆☆☆☆ #include #include using namespace std; int main() { int n,m,nc,mc; nc = 0; mc = 0; scanf("%d", &n); vector nv(n, 0); for(int i = 0; i m) { if(mc >= mv.size()) { if(nc >= nv.size()) break; answer[i] = nv[nc]; nc++; cont..
38. Inversion Sequence (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★★☆☆☆ #include #include using namespace std; int main() { int n, temp, x, count, cur; scanf("%d", &n); vector is(n+1, 0); vector num(n+1, 0); for(int i = 1; i = 2; i--) { temp = num[i-1]; num[i-1] = num[i]; num[i] = temp; } for(int i = 1; count != 0; i++) { if(num[i] ..
37. LRU(카카오 캐시 문제 변경) (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★★★★☆ #include #include using namespace std; int main() { int n, s, val, temp, idx; scanf("%d %d", &n, &s); int num[n]; for(int i = 0; i = 1; j--) { temp = num[j-1]; num[j-1] = num[j]; num[j] = temp; } ..
36. 삽입정렬 (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★☆☆☆☆ #include #include using namespace std; int main() { int n; scanf("%d", &n); vector num(n, 0); for(int i = 0; i = 0; j--) { if(num[j] > num[j+1]) { temp = num[j]; num[j] = num[j+1]; num[j+1] = temp; } } } for(int i = 0; i < num.size(); i++) printf("%d ", num[i]); return 0; } 1. 삽입정렬 : ..