HDU 4726 Kia's Calculation
来源:互联网 发布:js获取translatey的值 编辑:程序博客网 时间:2024/04/18 21:34
Kia's Calculation
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 615 Accepted Submission(s): 174
Problem Description
Doctor Ghee is teaching Kia how to calculate the sum of two integers. But Kia is so careless and alway forget to carry a number when the sum of two digits exceeds 9. For example, when she calculates 4567+5789, she will get 9246, and for 1234+9876, she will get 0. Ghee is angry about this, and makes a hard problem for her to solve:
Now Kia has two integers A and B, she can shuffle the digits in each number as she like, but leading zeros are not allowed. That is to say, for A = 11024, she can rearrange the number as 10124, or 41102, or many other, but 02411 is not allowed.
After she shuffles A and B, she will add them together, in her own way. And what will be the maximum possible sum of A "+" B ?
Now Kia has two integers A and B, she can shuffle the digits in each number as she like, but leading zeros are not allowed. That is to say, for A = 11024, she can rearrange the number as 10124, or 41102, or many other, but 02411 is not allowed.
After she shuffles A and B, she will add them together, in her own way. And what will be the maximum possible sum of A "+" B ?
Input
The rst line has a number T (T <= 25) , indicating the number of test cases.
For each test case there are two lines. First line has the number A, and the second line has the number B.
Both A and B will have same number of digits, which is no larger than 106, and without leading zeros.
For each test case there are two lines. First line has the number A, and the second line has the number B.
Both A and B will have same number of digits, which is no larger than 106, and without leading zeros.
Output
For test case X, output "Case #X: " first, then output the maximum possible sum without leading zeros.
Sample Input
159583036
Sample Output
Case #1: 8984
Source
2013 ACM/ICPC Asia Regional Online —— Warmup2
分析:贪心。
Code:
#include <algorithm>#include <iostream>#include <cstring>#include <cstdio>#define Min(a,b) ((a)<(b)?(a):(b))using namespace std;const int maxn=1000005;int s[2][10],ans[maxn];char s1[maxn],s2[maxn];int T,cnt,cas=1;int get_x(int x) { int num=0,mx; for(int i=0;i<=9;i++) { for(int j=0;j<=9;j++) { int tmp=(i+j)%10; if(tmp==x) { mx=Min(s[0][i],s[1][j]); num+=mx; s[0][i]-=mx; s[1][j]-=mx; mx=Min(s[1][i],s[0][j]); num+=mx; s[1][i]-=mx; s[0][j]-=mx; } } } return num;}bool get_head() { for(int k=9;k>0;k--) { for(int i=1;i<=9;i++) { for(int j=1;j<=9;j++) { int tmp=(i+j)%10; if(tmp==k) { if(s[0][i] && s[1][j]) { s[0][i]--; s[1][j]--; ans[0]=k; return true; } else if(s[0][j] && s[1][i]) { s[0][j]--; s[1][i]--; ans[0]=k; return true; } } } } } return false;}void solve(){ for(int i=9;i>0;i--) { int num=get_x(i); while(num--) { ans[cnt++]=i; } }}int main(){ scanf("%d",&T); while(T--) { scanf("%s %s",s1,s2); int len=strlen(s1); memset(s,0,sizeof(s)); for(int i=0;i<len;i++) { s[0][s1[i]-'0']++; s[1][s2[i]-'0']++; } cnt=1; printf("Case #%d: ",cas++); if(!get_head()) { printf("0\n"); continue; } solve(); for(int i=0;i<cnt;i++) printf("%d",ans[i]); if(cnt<len){ while(cnt<len) { putchar('0'); cnt++; } } puts(""); } return 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
- One Billion Customers
- 多线程(day13)
- poj 3628 01 背包
- 白求恩在中国是怎样解决性问题的
- Win7安装Ubuntu-Ubuntu下安装eclipse总结
- HDU 4726 Kia's Calculation
- 微信取消推送将葬送公众账号前途
- 斯大林逝世后的权利更迭
- [设计模式笔记]一. 创建型模式--5.Prototype模式(原型)(二)
- ya178手机平台正式开放
- 女子每天跑2公里减肥为夫捐肾
- Hadoop生态系统以及版本衍化
- UVA - 624 CD
- 中国大学本科专业排行榜:软件工程最赚钱