SDUT-1591
来源:互联网 发布:python 使用多个def的 编辑:程序博客网 时间:2024/06/15 18:00
交叉排序:偶数位置上的数从大到小排,奇数位置上的数从小到大排!注意是位置。。。
代码:
#include<bits/stdc++.h>using namespace std;int a[255],b[255],c[255];int cmp(int a,int b){ return a>b;}int main(){ int i,j,n,m,k=0,p=0; cin>>n; for(i=0;i<n;i++) { cin>>m; if((i+1)%2==0) { b[k]=m; k++; } else { a[p]=m; p++; } } sort(a,a+p); sort(b,b+k,cmp); p=k=0; for(i=0;i<n;i++) { if((i+1)%2==0) { c[i]=b[k]; k++; } else { c[i]=a[p]; p++; } } for(i=0;i<n-1;i++) cout<<c[i]<<' '; cout<<c[i]<<endl; return 0;}
代码写得并不好看!还需努力;写的时候没能一遍成功,所以就单步调试了一下,发现sort函数用错了;排序结束地址都多加了一!但只影响到了奇数位置的排序,并没有影响到偶数位置的排序,然后想了想为啥,发现数组中的元素的初始值都是零,很惊讶!所以奇数位置的排序一定会被影响的;偶数位置则不一定,因为题过了,所以后台测试数据应该都是大于等于零的!所以当排序结束地址多加了一时,奇数位置排序一定是错的!
阅读全文
0 0
- SDUT-1591
- SDUT 1591 交叉排序
- SDUT 1591 交叉排序
- 交叉排序 sdut oj 1591
- SDUT OJ 1591交叉排序
- SDUT 1591-交叉排序(Arrays.sort)
- SDUT-2109&&SDUT-3398
- sdut 1248
- sdut 1468
- sdut 2039
- sdut 2123
- sdut Emergency
- sdut 2151
- sdut 2169
- SDUT 周赛
- SDUT 整除
- SDUT 2829
- sdut 3260
- C++ opencv把蓝底照片转化为白底照片
- JAVA浮点数转中文金额
- 动手实践Makefile之ifeq
- HUD4393 Throw nails(思维模拟)
- CF 894 B/C 数学
- SDUT-1591
- 阿里云服务器发送邮件失败,25端口被禁用,采用ssl 方式 465端口发送
- Intellij IDEA ,按Ctrl+左键,不能进入类或方法的【解决办法】,提示Cannot find declaration to go to
- 内存对齐
- JQ定时请求数据,并根据返回的数据停止请求
- WPS/Word等的使用
- ORA-39097 ORA-39065 ORA-01427
- 728. Self Dividing Numbers
- 软件PWM控制led