HDU 4726 Kia's Calculation
来源:互联网 发布:redis实战java 编辑:程序博客网 时间:2024/04/28 13:44
题意:
给你两个数A、B,它们的位数一样,现在可以任意移动A、B数中数字的位置,0不能做为首部,并定义不进位的加法,即两个单位数相加结果为单位数%10,问你相加之后能得到的最大值是多少。
思路:
这里位数有10^6位(一开始看错看成数字的大小<=10^6,还以为只有6位),分别统计A、B每个数字出现的次数,然后先处理首位,直接枚举可能出现的情况然后取最大值,对于其他位,枚举可能的结果,即从9到0,对于每种结果去计算其可能出现的个数,然后放置在答案数组中。
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int MAX=1000005;int T;char A[MAX],B[MAX];int cnta[15],cntb[15],ans[MAX];int main(){int cas=1;scanf("%d",&T);while(T--){scanf("%s%s",A,B);memset(cnta,0,sizeof(cnta));memset(cntb,0,sizeof(cntb));int num=strlen(A);memset(cnta,0,sizeof(cnta));memset(cntb,0,sizeof(cntb));for(int i=0;i<num;i++){cnta[A[i]-'0']++;}for(int i=0;i<num;i++){cntb[B[i]-'0']++;}printf("Case #%d: ",cas++);if(num==1){printf("%d\n",(A[0]-'0'+B[0]-'0')%10);continue;}//firstint Max=-1,indexi,indexj,tmp;for(int i=1;i<=9;i++){if(!cnta[i]) continue;for(int j=1;j<=9;j++){if(!cntb[j]) continue;tmp=(i+j)%10;if(Max<=tmp){Max=tmp;indexi=i;indexj=j;}}}cnta[indexi]--;cntb[indexj]--;ans[1]=Max;//otherint top=2;for(int i=9;i>=0;i--){for(int j=0;j<=9;j++){int k=(i-j+10)%10;if(cnta[j]==0||cntb[k]==0) continue;int cnt=min(cnta[j],cntb[k]);cnta[j]-=cnt;cntb[k]-=cnt;while(cnt--){ans[top++]=i;}}}//delletint st=1;for(int i=1;i<num;i++){if(ans[i]==0) st++;else break;}//printfor(int i=st;i<=num;i++){printf("%d",ans[i]);}printf("\n");}return 0;}
0 0
- HDU 4726 Kia's Calculation
- HDU 4726 Kia's Calculation
- hdu 4726 Kia's Calculation
- HDU 4726 Kia's Calculation
- HDU 4726 Kia's Calculation
- HDU 4726 Kia's Calculation
- HDU 4726 Kia's Calculation
- HDU 4726 Kia's Calculation
- HDU 4726 Kia's Calculation
- HDU 4726 Kia's Calculation
- HDU 4726 Kia's Calculation 解题报告
- HDU 4726 Kia's Calculation (贪心)
- hdu 4726 Kia's Calculation(贪心)
- hdu 4726 Kia's Calculation (贪心)
- HDU 4726 Kia's Calculation(数学+贪心)
- HDU 4726 Kia's Calculation (贪心算法)
- hdu 4726 Kia's Calculation(贪心,好题)
- Kia's Calculation
- Caffe框架一些易忽略的细节
- 第二次考试 (图论)第三题 穿越栅栏
- Java反射
- POJ 3648 Wedding【2-sat O(n)】
- iOS readLine
- HDU 4726 Kia's Calculation
- sqlplus编译失效对象
- iOS设计模式-------《工厂模式》
- python海量数据读写优化
- 轮播图
- 又一编辑神器-百度编辑器-Ueditor
- 几何画板使这样创建滑行反射变换的
- hdu 2830 Matrix Swapping II
- redis学习中的一种尝试