URAL1901贪心
2014-07-19 20:17
169 查看
原题http://acm.timus.ru/problem.aspx?space=1&num=1901
//此题感谢一个总是爆我照的人,他的一句话,让我顿悟 #include <stdio.h> #include <stdlib.h> #include <malloc.h> #include <limits.h> #include <string.h> #include <string> #include <math.h> #include <algorithm> #include <iostream> #include <ctype.h> #include <stack> #include <queue> #include <deque> #include <set> #include <map> using namespace std; #define N 111111 int a ,b ,t ; int main(){ int n,s; int i; while(~scanf("%d%d",&n,&s)){ memset(t,0,sizeof(t)); for(i=0;i<n;i++){ scanf("%d",&a[i]); } sort(a,a+n); int cot = 0; int l = 0; int r = n-1; while(l < r){ if(a[l]+a[r] > s){ t[cot++] = a[l++]; t[cot++] = a[r--]; } else{ t[cot++] = a[l++];//如果最小的和最大的相加都小于s,那么最小的就一定要和一个相连。那么就和次小的相连 t[cot++] = a[l++]; } } if(l == r){ t[cot++] = a[l]; } int sum=0; for(i=0;i<cot;i++){ if(t[i]+t[i+1] <= s){ sum++; i++; } else{ sum++; } } printf("%d\n",sum); for(i=0;i<n;i++){ if(i != n-1) printf("%d ",t[i]); else printf("%d\n",t[i]); } } return 0; }
相关文章推荐
- URAL 1901 Space Elevators(贪心)
- I - Space Elevators URAL - 1901 (贪心 简单题)
- URAL 2021. Scarily interesting!(*贪心? set整理)
- URAL - 2021 Scarily interesting!(贪心)
- URAL 1014 Product of Digits 贪心
- ural 1987. Nested Segments【离散化+贪心+线段树】
- URAL 2021 Scarily interesting!(贪心)
- Ural 1303 Minimal Coverage(贪心)
- (贪心5.2.6)URAL 1014 Product of Digits(利用数据有序化进行贪心选择)
- URAL1203——DPor贪心——Scientific Conference
- URAL1303——贪心——Minimal Coverage
- URAL 1025. Democracy in Danger (贪心)
- URAL 2021 Scarily interesting! (贪心+题意)
- URAL 2019 Pair: normal and paranormal (贪心) -GDUT联合第七场
- ural 1303 Minimal Coverage【贪心】
- URAL - 1901 Space Elevators
- (贪心5.2.7)URAL 1025 Democracy in Danger
- 贪心 URAL 1303 Minimal Coverage
- URAL 1025 Democracy in Danger 贪心
- ural 1303 Minimal Coverage【贪心】