您的位置:首页 > 编程语言 > Java开发

Java大数 字符串处理 HDU2100

2015-08-05 20:15 309 查看
import java.math.*;
import java.util.*;

public class Main
{
static String arr1;
static String arr2;;
static char[] ans=new char [200];
static char[] reans=new char [200];
static BigInteger c=new BigInteger("26");
public static void main(String[] args)
{
Scanner cin=new Scanner(System.in);
while(cin.hasNext())
{
arr1=cin.next();
arr2=cin.next();
int len1=arr1.length();
int len2=arr2.length();
BigInteger a=BigInteger.ZERO;
BigInteger b=BigInteger.ZERO;
for(int i=0;i<len1-1;i++)
{
char item=arr1.charAt(i);
a=a.add(BigInteger.valueOf((item-'A')));
a=a.multiply(c);
}
char item1=arr1.charAt(len1-1);
a=a.add(BigInteger.valueOf((item1-'A')));
for(int i=0;i<len2-1;i++)
{
char item=arr2.charAt(i);
b=b.add(BigInteger.valueOf((item-'A')));
b=b.multiply(c);
}
char item2=arr2.charAt(len2-1);
b=b.add(BigInteger.valueOf((item2-'A')));
a=a.add(b);
int w=0;
while(a.compareTo(BigInteger.ZERO)>0)
{
int x=a.remainder(c).intValue();
a=a.divide(c);
char cc='A';
int tt=(int)cc;
ans[w]=(char)(tt+x);
w++;
}
ans[w]='\0';
for(int i=0;i<w;i++)
{
reans[i]=ans[w-1-i];
}
reans[w]='\0';
for(int i=0;i<w;i++)
{
System.out.print(reans[i]);
}
System.out.println();
}
}
}


View Code
char item=arr1.charAt(i);  //获取String中的特定位置

a.remainder(b);       //a%b
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: