본문 바로가기

반응형
SMALL

전체 글

1849 - 순열 1849번: 순열 1부터 N까지의 수들이 한 번씩 쓰인 수열이 있다. 그 수열에서 i 앞에 있는 수 들 중, i보다 큰 수들의 개수를 A[i]라고 정의하자. A[i]가 주어져 있을 때, 원래 수열을 구하는 프로그램을 작성하여라 www.acmicpc.net #include const int LN = 1e5; int N; int tree[LN * 3 + 10]; int arr[LN]; int R_ARR[LN]; int R; int push(int n, int s, int e, int t, int v) { if (s == e && s == t) { tree[n] = v; return tree[n]; } if (t < s || e < t) { return tree[n]; } int m = (s + e) / 2;.. 더보기
18110 - solved.ac 18110번: solved.ac 5명의 15%는 0.75명으로, 이를 반올림하면 1명이다. 따라서 solved.ac는 가장 높은 난이도 의견과 가장 낮은 난이도 의견을 하나씩 제외하고, {5, 5, 7}에 대한 평균으로 문제 난이도를 결정한다. www.acmicpc.net 개 같은 문제 (내 실력이) #include const int LN = 3 * 1e5 + 10; int N, minus; float R; int ARR[LN]; int minComp(int x, int y) { return x < y; } void swap(int& x, int& y) { int z = x; x = y; y = z; } struct PQ { int hn; int heap[LN]; int (*comp)(int, int);.. 더보기
1300 - K번째 수 1300번: K번째 수 세준이는 크기가 N×N인 배열 A를 만들었다. 배열에 들어있는 수 A[i][j] = i×j 이다. 이 수를 일차원 배열 B에 넣으면 B의 크기는 N×N이 된다. B를 오름차순 정렬했을 때, B[k]를 구해보자. 배열 A와 B www.acmicpc.net #include typedef long long LL; const LL MAX = 1e5 * 1e5; LL N, M; LL R; LL min(LL x, LL y) { return x > y ? y : x; } void init() { scanf("%lld", &N); scanf("%lld", &M); } LL cal(LL m) { LL count = 0; for (int n = 1; n e) { return; } LL m = (s .. 더보기
6236 - 용돈 관리 6236번: 용돈 관리 현우는 용돈을 효율적으로 활용하기 위해 계획을 짜기로 하였다. 현우는 앞으로 N일 동안 자신이 사용할 금액을 계산하였고, 돈을 펑펑 쓰지 않기 위해 정확히 M번만 통장에서 돈을 빼서 쓰기로 www.acmicpc.net #include const int LN = 1e5 + 30; int N, M, R; int COST[LN]; void init() { scanf("%d %d", &N, &M); for (int n = 0; n < N; ++n) { scanf("%d", &COST[n]); } } int cal(int money) { int balance = money; int count = 1; for (int n = 0; n < N; ++n) { if (money < COST[n]).. 더보기
1777 - 순열복원 1777번: 순열복원 순열의 크기 N(1 ≤ N ≤ 100,000)이 주어진다. 두 번째 줄에는 순열 1, 2, …, N에 해당하는 Inversion sequence가 공백으로 구분되어 들어온다. www.acmicpc.net #include const int LN = 1e5 * 3; int tree[LN]; int N, r; int ARR[LN]; int R_ARR[LN]; int push(int n, int s, int e, int t, int v) { if (t < s || e < t) { return tree[n]; } if (s == e && t == s) { tree[n] = v; return tree[n]; } int m = (s + e) / 2; push(n * 2, s, m, t, v); .. 더보기
1306 - 달려라 홍준 1306번: 달려라 홍준 첫째 줄에는 뛰는 코스의 길이, 즉 칸수 N과 홍준이의 시야의 범위 M이 주어진다. 시야가 M이라고 하면 현재 위치에서 앞뒤로 M-1칸까지 광고판이 보이는 것이다. (1 ≤ M ≤ N ≤ 1,000,000) 두 번째 www.acmicpc.net #include const int MAX_NUM = 1e6 + 10; const int NODE = 1e6; int tree[NODE * 3]; int N, M; int sp, ep; int push(int n, int s, int e, int t, int v) { if (t < s || e < t) return tree[n]; if (s == e && s == t) { tree[n] = v; return tree[n]; } int m =.. 더보기
1715 - 카드 정렬하기 1715번: 카드 정렬하기 정렬된 두 묶음의 숫자 카드가 있다고 하자. 각 묶음의 카드의 수를 A, B라 하면 보통 두 묶음을 합쳐서 하나로 만드는 데에는 A+B 번의 비교를 해야 한다. 이를테면, 20장의 숫자 카드 묶음과 30장 www.acmicpc.net #include typedef long long LL; const int LN = 1e5 + 10; int minComp(LL x, LL y) { return x < y; } void swap(LL& x, LL& y) { LL z = x; x = y; y = z; } LL R; int N; int T; struct PQ { int hn; LL heap[LN]; int (*comp)(LL x, LL y); void init() { hn = 0; co.. 더보기
14235 - 크리스마스 선물 14235번: 크리스마스 선물 크리스마스에는 산타가 착한 아이들에게 선물을 나눠준다. 올해도 산타는 선물을 나눠주기 위해 많은 노력을 하고 있는데, 전세계를 돌아댕기며 착한 아이들에게 선물을 나눠줄 것이다. 하지만 www.acmicpc.net #include int N; int A; const int LN = 5e5 + 10; int maxComp(int x, int y) { return x > y; } void swap(int& x, int& y) { int z = x; x = y; y = z; } struct PQ { int hn; int heap[LN]; int (*comp)(int, int); void init() { hn = 0; comp = maxComp; } void push(int x) {.. 더보기

반응형
LIST