10057 - A mid-summer night's dream.
2013-03-13 22:08
387 查看
描述:先对数组排序,第一个数是找出中间数,第二个数是找出与此相同的数有多少,第三个数是两个数的区间内有多少数 #include <cstdio> #include <cstdlib> int cmp(const void *p1,const void *p2) { return *(int*)p1 - *(int*)p2; } int num[1000010]; int main() { //freopen("a.txt","r",stdin); int n; while(scanf("%d",&n)!=EOF) { for(int i=0; i<n; i++) scanf("%d",&num[i]); qsort(num,n,sizeof(int),cmp); int k=0; int a=1,b; if(n%2==0) { k=num[n/2-1]; b=num[n/2]-k+1; } else { k=num[n/2]; b=1; } if(n%2==1) { for(int i=n/2+1; i<n; i++) if(num[i]==k) a++; else break; for(int i=n/2-1; i>=0; i--) if(num[i]==k) a++; else break; } else { for(int i=n/2; i<n; i++) if(num[i]==num[n/2]) a++; else break; for(int i=n/2-2; i>=0; i--) if(num[i]==k) a++; else break; } printf("%d %d %d\n",k,a,b); } return 0; }
相关文章推荐
- A mid-summer night’s dream - UVa 10057 中位数
- UVA - 10057 A mid-summer night's dream
- UVa 10057 - A mid-summer night's dream.
- UVA - 10057 A mid-summer night's dream.
- UVA 10057 A mid-summer night's dream.
- UVA - 10057 A mid-summer night's dream.
- uva 10057 A mid-summer night’s dream 夏天晚上的梦
- UVA - 10057 A mid-summer night's dream.
- Uva 10057 A mid-summer night's dream
- uva 10057 A mid-summer night's dream.(检索)
- UVA - 10057 A mid-summer night's dream.
- uva 10057 A mid-summer night’s dream(中位数)
- uva 10057 - A mid-summer night's dream.
- UVa 10057 - A mid-summer night's dream.
- uva10057 - A mid-summer night's dream
- A mid-summer night’s dream
- UVA A mid-summer night’s dream(中位数求值)
- 10057 - A mid-summer night's
- UVA 10057 A mid-summer night's dream. 仲夏夜之梦 求中位数
- UVa 10057 A mid-summer night's dream. (二分&可以取哪些作为中位数?)