Codeforces #288 B
来源:互联网 发布:enum数据类型php 编辑:程序博客网 时间:2024/04/24 00:48
居然一直wa,也是醉了,原来把题目中的长度10^5看成是数字在10^5以下,默默地用了int再转化成字符串。。。。结果第10组就悲剧了。。。
题目还是要看清楚的。。。还有就是以为给的数可能是偶数····,结果题目清楚的说了只会是奇数。。。
思路:如果前面有比最后一个小的,让最后一个和最前面的那个偶数交换,如果没有,那么最后一个跟最后面的偶数交换。
#include<cstdio>#include<cstring>char s[100010];int is_even(int a){ if((a-'0')%2==0) return 1; return 0;}int main (){ while (scanf("%s",s)==1) { int i; int flag=0; int n=strlen(s); for(i=0;i<n;i++) { if(is_even(s[i])) { flag=1; break; } } if(!flag) printf("-1\n"); else{ for(i=0;i<n-1;i++) { if(is_even(s[i]) && s[i]-'0'<s[n-1]-'0') { int ch; ch=s[i]; s[i]=s[n-1]; s[n-1]=ch; break; } } if(i==n-1) { for(i=n-2;i>=0;i--) { if(is_even(s[i])) { int ch; ch=s[i]; s[i]=s[n-1]; s[n-1]=ch; break; } } } printf("%s\n",s); } memset(s,'\0',sizeof(s)); } return 0;}
0 0
- Codeforces #288 B
- CodeForces 288B
- codeforces B
- codeforces B
- codeforces B
- codeforces B
- CodeForces 626B CodeForces 626B【暴力】
- CodeForces 841B (B) 博弈
- codeforces 134B
- codeforces#98 b
- codeforces 105 div2 B
- Codeforces 166B - Polygons
- codeforces B. Coins
- codeforces----193B Xor
- codeforces----208B Solitaire
- Codeforces 1B - Spreadsheet
- codeforces 214B Hometask
- Codeforces Round #136 B
- java.util.Collections与线程安全
- left join 和 left outer join 的区别的总结
- Linux命令集合与实用技巧
- gpio_request()简单分析
- 初次见面 你好EF
- Codeforces #288 B
- Android抗锯齿设置
- 【Darwin学习笔记】之TaskThread
- 关于MQTT-SN的开发
- SQL SERVER 2005如何建立自动备份的维护计划
- 高通平台MSM8916LCM模块移植(一)-bootloader部分
- 找数字
- LeetCode—Largest Number
- 服务器向Android推送的相关知识和解决方案