본문 바로가기

전체 글412

knapsack 더블릿 1234567891011121314151617181920212223242526272829303132333435363738394041#include #include #include #include #include using namespace std;vector mon(2000); bool compare(const pair& a, const pair& b) { if (a.second == b.second) return a.first > b.first; return a.second > b.second;} int main() { int w,n; scanf("%d %d", &w, &n); getchar(); for (int i = 1; i 0&&mon[i].first > w) { rst += (w * mon[i].. 2019. 2. 20.
mixing milk 더블릿 1234567891011121314151617181920212223242526272829303132333435363738#include #include #include #include using namespace std;vector company(6000); bool compare(const pair& a, const pair& b) { if (a.first == b.first) return a.second 2019. 2. 20.
(복습필요) 11000 강의실 배정 12345678910111213141516171819202122232425262728293031323334353637383940414243#include #include #include #include #include #include typedef long long ll;using namespace std;priority_queue pq;vector arr(300000); bool compare(const pair& a, const pair& b) { if (a.first == b.first) { return a.second 2019. 2. 19.
1931 회의실 배정 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849#include #include #include #include using namespace std;typedef long long ll;vector arr(200000); bool compare(const pair& a, const pair& b) { if (a.second == b.second) { if (a.first 2019. 2. 19.
11047 동전만들기 12345678910111213141516171819202122#include int arr[1000002] = { 0 }; int main() { int n, k,x; scanf("%d %d", &n, &k); int tmp = 0; for (int i = n; i >= 1; i--) { scanf("%d", &arr[i]); } for (int i = 1; i 2019. 2. 19.
1449 수리공 항승 12345678910111213141516171819202122232425#include #include using namespace std; int arr[2000] = { 0 }; int main(){ int n, l; scanf("%d %d", &n, &l); for (int i = 1; i 2019. 2. 19.
4796 캠핑 12345678910111213141516171819202122#include int upper[100] = { 0 };int down[100] = { 0 }; int main() { int idx = 1; while (1) { int n, a, b; scanf("%d %d %d", &n, &a, &b); if (n == 0) return 0; int rst=0; if ((b%a) > n) { rst = (b / a)*n + n; }else{ rst = (b / a)*n + (b%a); } printf("Case %d: %d\n", idx,rst); idx++; } }Colored by Color Scriptercs 2019. 2. 19.
계단 오르기 더블릿 12345678910111213141516171819202122232425#include #include using namespace std; int arr[400] = { 0 };int dp[400] = { 0 }; int main() { int n; scanf("%d", &n); getchar(); for (int i = n; i > 0; i--) { scanf("%d", &arr[i]); } dp[1] = arr[1]; dp[2] = dp[1] + arr[2]; dp[3] = dp[1] + arr[3]; for (int i = 4; i 2019. 2. 19.
점수 인플레이션 더블릿 1234567891011121314151617181920212223242526272829303132333435363738394041#include #include #include using namespace std; int arr[20000] = { 0 };int dp[20000] = { 0 }; int main() { int m, n; scanf("%d %d", &m, &n); getchar(); //시간초과를 막기 위해 입력을 받을때마다 연산 진행 for (int i = 1; i 2019. 2. 19.
정사각형 수 더블릿 12345678910111213141516171819202122232425262728293031323334353637383940#include int dp[300][300] = { 0 };int arr[300][300] = { 0 }; int main() { int n; scanf("%d", &n); //문자열을 받은 뒤, 숫자 배열로 전환 char str[300] = { 0 }; for (int i = 0; i 2019. 2. 18.
2*1, 2*2 타일링 더블릿 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061#include #include #include using namespace std; int numA[1000] = { 0 };int numB[1000] = { 0 };int result[1000] = { 0 }; void NumSort(int* arr, int* idx) { for (int i = 0; i = 10) { if (i == *idx) { *idx += 1; } arr[i + 1] += (arr[i] / 10); arr[i] %= 10; } }} int main() { int n,idxA=0,.. 2019. 2. 18.
주사위 쌓기 더블릿 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677#include #include using namespace std; int maxArr[10000][10] = { 0 };int dp[10000][10] = { 0 }; int main() { int n; scanf("%d", &n); int arr[10] = { 0 }; for (int i = 1; i 2019. 2. 18.