贪心 不是很难  各种细节注意

#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的更多相关文章

  1. HDU 4726 Kia's Calculation(贪心构造)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4726 题意:给出两个n位的数字,均无前缀0.重新排列两个数字中的各个数,重新排列后也无前缀0.得到的两 ...

  2. hdu 4726 Kia's Calculation

    思路:刚开始想复杂了. 看解题报告后才知道这题挺简单的,看来还是要多训练啊!!! 单独处理首位的数字,不能为0.其他的就好处理了,从大到小依次找下去就可以了…… 代码如下: #include<i ...

  3. HDU 4726 Kia's Calculation (贪心算法)

    Kia's Calculation Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) T ...

  4. HDU 4726 Kia's Calculation(贪心)

    Kia's Calculation Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  5. hdu 4726(贪心)

    Kia's Calculation Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  6. ACM学习历程—HDU 4726 Kia's Calculation( 贪心&&计数排序)

    DescriptionDoctor Ghee is teaching Kia how to calculate the sum of two integers. But Kia is so carel ...

  7. 2013 ACM/ICPC Asia Regional Online —— Warmup2

    HDU 4716 A Computer Graphics Problem 水题.略 HDU 4717 The Moving Points 题目:给出n个点的起始位置以及速度矢量,问任意一个时刻使得最远 ...

  8. HDOJ 2111. Saving HDU 贪心 结构体排序

    Saving HDU Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  9. 【HDU 3037】Saving Beans Lucas定理模板

    http://acm.hdu.edu.cn/showproblem.php?pid=3037 Lucas定理模板. 现在才写,noip滚粗前兆QAQ #include<cstdio> #i ...

随机推荐

  1. 面试之C#--垃圾回收器什么时候回收?

    每个对象只有在该对象不存在任何引用才会被垃圾回收起回收. 可以调用静态方法System.GC.Collect()垃圾回收器,但是不建议这么做: 用using语句可以有效的自动释放掉资源. 实在没有办法 ...

  2. 【译】在JavaScript中{}+{}的结果是什么?

    原文链接:What is {} + {} in JavaScript? 最近,Gary Bernhardt在一个名为'Wat'的闪电演讲中提到了一些有趣的JavaScript技巧.当你把一个objec ...

  3. 页面get请求 中文参数方法乱码问题

    对于get方式,请求参数中存在中文,可以使用下面的方法进行处理: 两次使用encodeURI()方法:例如:encodeURI(encodeURI(“中文”)),然后再服务器中使用URLDecoder ...

  4. 取消定时-CICS

    CICE CA R 做定时的时候最好加上REqID

  5. ios版弹珠游戏源码

    这个是我们比较喜欢玩的一直小游戏的,ios版弹珠游戏源码,该游戏源码来着IOS教程网其他网友提供上传的,大家可以了解一下吧. nore_js_op>     <ignore_js_op&g ...

  6. poj 1659 Frogs' Neighborhood Havel-Hakimi定理 可简单图定理

    作者:jostree 转载请注明出处 http://www.cnblogs.com/jostree/p/4098136.html 给定一个非负整数序列$D=\{d_1,d_2,...d_n\}$,若存 ...

  7. C# Oracle海量数据瞬间插入到数据库的方法

    C# 海量数据瞬间插入到数据库的方法 当我们在数据库中进行大量的数据追加时,是不是经常因为数据量过大而苦恼呢?而所谓的海量数据,一般也是上万级的数据,比如我们要添加一百万条数据,应该如何提高它的效率呢 ...

  8. 窗体位置设置StartPosition属性

    有如下选项,分别含义如下: CenterParent                    窗体在其父窗体中居中.      CenterScreen                    窗体在当前 ...

  9. 关于Socket编写简单聊天工具的总结(原创)

    这段时间再看socket编程,虽然现在是刚刚接触,但是还是忍不住想写一篇总结,来激励自己努力学习,写的不好的地方,还请大家指教啊! 下面针对一个简单的发送消息和文件的程序说说吧.   首先是服务器需要 ...

  10. input获取永久焦点

    $(function () { $('#test').blur(function () { var that = this; //或者用闭包 setTimeout(function () { $(th ...