From bf5a12d00eaa214f2d3e7bda55264480d457c0b5 Mon Sep 17 00:00:00 2001 From: Kirito <1362050620@qq.com> Date: Fri, 29 Apr 2016 11:07:23 +0800 Subject: [PATCH] Create 208_csdn.cpp --- NYOJ/208_csdn.cpp | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 NYOJ/208_csdn.cpp diff --git a/NYOJ/208_csdn.cpp b/NYOJ/208_csdn.cpp new file mode 100644 index 0000000..72bca8e --- /dev/null +++ b/NYOJ/208_csdn.cpp @@ -0,0 +1,38 @@ +#include +#include +#include +const int N = 10005; +int arr[N][2]; +bool used[N];//表示第几天被占用了 +int compare(const void *a, const void *b) +{ + int *p1 = (int *)a; + int *p2 = (int *)b; + return p2[0] - p1[0];//价格降序 +} +int main() +{ + int n,i,j,sum,d; + while(scanf("%d", &n) != EOF) + { + memset(used, 0, sizeof(used)); + for(i = 0; i < n; ++i) + scanf("%d %d", &arr[i][0], &arr[i][1]); + qsort(arr, n, 2*sizeof(int), compare); + sum = 0; + for(i = 0; i < n; ++i) + { + for(j = arr[i][1]; j > 0; --j) + { + if(!used[j])//在这之前,有日期可用 + { + used[j] = true; + sum += arr[i][0]; + break; + } + } + } + printf("%d\n", sum); + } + return 0; +}