hdu 4726
来源:互联网 发布:centos syslog服务器 编辑:程序博客网 时间:2024/05/29 15:18
贪心 不是很难 各种细节注意
#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int num1[10],num2[10];int cc(int i, int j){ for(int k = 0; k <= 9; k++) { if( (k+i)%10 == j ) return k; } return 0;}int main(){ int t,ca = 1; scanf("%d",&t); getchar(); while(t--) { memset(num1, 0, sizeof(num1)); memset(num2, 0, sizeof(num2)); char a[1000010]; gets(a); int len = strlen(a); for(int i = 0; i < len; i++) num1[a[i]-'0']++; gets(a); len = strlen(a); for(int i = 0; i < len; i++) num2[a[i]-'0']++; int flag = 0, flag1 = 0; printf("Case #%d: ",ca++); for(int i = 9; i >= 0; i--) { for(int j = 0; j <= 9; j++) { int k = cc(j, i); if(j != 0 && k != 0 && num1[j] && num2[k]) { num1[j]--, num2[k]--; flag = 1; if(i != 0) { flag1 = 1; printf("%d",i); } break; } } if(flag) break; } for(int i = 9; i >= 0; i--) { if(!flag1 && i == 0) { printf("0"); break; } for(int j = 0; j <= 9; j++) { int k = cc(j, i); int d = min(num1[j], num2[k]); num1[j] -= d; num2[k] -= d; for(int q = 0; q < d; q++) { if(i != 0) flag1 = 1; printf("%d",i); } } } puts(""); } return 0;}
- hdu 4726
- HDU 4726 贪心
- HDU 4726 贪心
- HDU-4726-K
- hdu
- hdu
- HDU
- hdu ()
- hdu
- hdu
- HDU
- HDU
- hdu
- hdu
- HDU
- Hdu
- hdu
- hdu-
- 非常实用的15款开源PHP类库
- ArrayList<String> 转化为String数组问题
- Android中Bitmap和Drawable转换(zz)
- IOS APP的图标尺寸、启动画面尺寸、宣传画面尺寸
- ORACLE分析函数(1)
- hdu 4726
- 【Dojo学习之一】dojo介绍
- mvc框架详解
- F28335_ADC使用
- Intent.ACTION_MAIN
- 常用的入侵端口
- 框架与Window对象 学习笔记(一): 创建多个框架
- CPU执行第一条指令时情形
- Oracle DB 查看预警日志