题目链接

http://acm.hdu.edu.cn/showproblem.php?pid=2100

这题开始一直想着先把26进制转换成10进制,在转换成26进制,又200个字符因而行不通,

直接卡死了,不会做,后来才知道因为是200的长度的字符串,所以啊,就是用到大数相加的思想了。

引用http://blog.csdn.net/q3498233/article/details/4427447的思路

解题思路:也是一道进制转换的问题啦,其实把字母转换成10进制后,再转换回26进制,本身就是一个逆过程。根本不用转换成10进制啦,就在26进制的基础上进行加法就是了,相加的和超过25,就进位啦,别被题目的提示给忽悠了。因为是200的长度的字符串,所以啊,就是用到大数相加的思想了

特别注意:数据如果给的是 AAAAAAAAA    *的话最后结果就是*,*是任意一个字母,这是特殊情况,大家要注意啦。

将字符串逆序,为计算方便,将长度比较少的那个字符串后面补零,,最后逆序输出即可。

我的AC代码

#include<stdio.h>
#include<string.h>
char a[210],b[210],c[210],d[210];
int main(void)
{
int i,p,q,n,s;
while(scanf("%s%s",c,d)==2)
{
p=strlen(c);
q=strlen(d);
for(i=p-1;i>=0;i--)
a[p-1-i]=c[i];
a[p]='\0';
for(i=q-1;i>=0;i--)
b[q-1-i]=d[i];
b[q]='\0';
n=p;
if(p<q)
{
for(i=p;i<q;i++)
a[i]='A';
a[i]='\0';
n=q;
}
if(p>q)
{
for(i=q;i<p;i++)
b[i]='A';
a[i]='\0';
n=p;
}
s=0;
for(i=0;i<n;i++)
{
a[i]=a[i]+b[i]+s-'A';
if(a[i]>'Z')
{
s=1;
a[i]=a[i]-26;
}
else
s=0;
}
if(s==1)
{
a[i]='B';
n++;
}
for(i=n-1;i>=0;i--)
{
if(a[i]=='A')
n--;
else
break;
}
for(i=n-1;i>=0;i--)
printf("%c",a[i]);
printf("\n");
}
return 0;
}

题目得多做多思考,才有进步。

HDU -2100-Lovekey的更多相关文章

  1. HDU 2100 Lovekey (26进制大数、字符串)

    Lovekey Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Sub ...

  2. (string 高精度) Lovekey hdu 2100

    Lovekey Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Su ...

  3. HDU 2100 分类: ACM 2015-06-17 23:49 15人阅读 评论(0) 收藏

    Lovekey Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Su ...

  4. hdu 2100

    #include<stdio.h> #include<string.h> char a[300],b[300]; int a1[300],b1[300]; int main() ...

  5. Java大数练习第二弹

    hdu1250 水题 题目链接:pid=1250">http://acm.hdu.edu.cn/showproblem.php?pid=1250 import java.util.*; ...

  6. hdu Lovekey(水题)

    #include<stdio.h> #include<string.h> ]; int main() { ],s2[]; int l1,l2,i,j,k; while(scan ...

  7. HDU 5047 Sawtooth(大数优化+递推公式)

    http://acm.hdu.edu.cn/showproblem.php?pid=5047 题目大意: 给n条样子像“m”的折线,求它们能把二维平面分成的面最多是多少. 解题思路: 我们发现直线1条 ...

  8. (01背包 排序+特判)饭卡(hdu 2546)

    http://acm.hdu.edu.cn/showproblem.php?pid=2546   Problem Description 电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额 ...

  9. HDU——PKU题目分类

    HDU 模拟题, 枚举1002 1004 1013 1015 1017 1020 1022 1029 1031 1033 1034 1035 1036 1037 1039 1042 1047 1048 ...

  10. HDU 1160 DP最长子序列

    G - FatMouse's Speed Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64 ...

随机推荐

  1. Android ART运行时无缝替换Dalvik虚拟机的过程分析

    Android ART运行时无缝替换Dalvik虚拟机的过程分析 分类: Android2014-01-13 00:59 42722人阅读 评论(66) 收藏 举报 AndroidARTDalvikV ...

  2. 转:web_custom_request应用示例

    LoadRunner提供的web_custom_request函数可以用于实现参数的动态生成.在LoadRunner中,web_reg_save_param和custom_request都常于处理参数 ...

  3. Codevs 5590 A+B 问题 超级版

    5590 A+B 问题 超级版 时间限制: 1 s 空间限制: 1000 KB 题目等级 : 青铜 Bronze 题目描述 Description 不用+-*/%计算A+B 输入描述 Input De ...

  4. 简单三段式状态机实验3-Sequence Detect(序列检测)

    1.序列检测器的逻辑功能描述:序列检测指的就是将一个指定的序列从数字码流中识别出来.本例中,我们将设计一个"10010”序列的检测器.设x_in为数字码流输入,z_out为检出标记输出,高电 ...

  5. Firebug Console 与命令行全集

    Console API 当打开 firebug (也包括 Chrome 等浏览器的自带调试工具),window 下面会注册一个叫做 console 的对象,它提供多种方法向控制台输出信息,供开发人员调 ...

  6. (简单) CF 44D Hyperdrive,数学。

    In a far away galaxy there are n inhabited planets, numbered with numbers from 1 to n. They are loca ...

  7. 用php自动发邮件的简单实现

    如何自动发送邮件? php自带mail方法,不过只能在linux下直接使用,windows下要配置smtp服务器,有点麻烦. 可以用一些现成的类来实现,比如很有名的phpmailer,功能很强大,代码 ...

  8. 静态方法List

    public class Country { public static List<Country> CountryList = new List<Country> { new ...

  9. (中等) HDU 1495 非常可乐,BFS。

    Description 大家一定觉的运动以后喝可乐是一件很惬意的事情,但是seeyou却不这么认为.因为每次当seeyou买了可乐以后,阿牛就要求和seeyou一起分享 这一瓶可乐,而且一定要喝的和s ...

  10. 防止多个UIAlertView重叠弹出

    http://www.jianshu.com/p/7ac398ef4532 项目中可能会遇到这种情况,好几个alertView因为逻辑关系全部弹出,用户需要一个个的点击才能将所有的alertView取 ...