zoukankan      html  css  js  c++  java
  • 1047: 小A的计算器

    1047: 小A的计算器

    时间限制: 1 Sec  内存限制: 128 MB
    提交: 124  解决: 105
    [提交][状态][讨论版]

    题目描述

    以往的操作系统内部的数据表示都是二进制方式,小A新写了一个操作系统,系统内部的数据表示为26进制,其中0-25分别由a-z表示。
    现在小A要在这个操作系统上实现一个计算器,这个计算器要能实现26进制数的加法运算。你能帮小A实现这个计算器吗?

    输入

    输入的第一行包括一个整数N(1<=N<=100)。
    接下来的N行每行包括两个26进制数x和y,它们之间用空格隔开,每个数的位数最多为10位,我们可以保证相加的结果的位数最多也是10位。每个数会用小A所设计的操作系统中的表示方法来表示,如:bsadfasdf。即每个数的各个位均由26个小写字母a-z中的一个来表示。

    输出

    输出x和y相加后的结果,结果也要用题目中描述的26进制数来表示。

    样例输入

    4
    ba cd
    c b
    b c
    ba c

    样例输出

    dd
    d
    d
    bc

    提示

     

    来源

    #include <iostream>
    using namespace std;
    int main(){
     int n,i,j,s1,s2,t1,t2,a[100];
     string str1,str2,str="abcdefghijklmnopqrstuvwxyz";
     int k;
     cin>>n;
     for(i=0;i<n;i++){
      cin>>str1>>str2;
      t1=0;
      k=0;
      for(j=0;str1[j]!='';j++){
       t1=t1*26+str1[j]-'a';
      }
      t2=0;
      for(j=0;str2[j]!='';j++){
       t2=t2*26+str2[j]-'a';
      }
      s1=t1+t2;
      while(s1!=0){
       a[k++]=s1%26;
       s1=s1/26;
      }
      for(j=k-1;j>=0;j--){
       cout<<str[a[j]];
      }
      cout<<endl;
     }
     return 0;
    }

  • 相关阅读:
    7.微软AJAX的解决方案
    6.投票系统
    5.JSON
    4.无刷新评论
    3.输入商品名称后自动弹出其价格示例
    2.JQuery AJAX
    1.AJAX简介
    网站优化
    防抖和节流
    在地址栏输入一次地址会发生什么
  • 原文地址:https://www.cnblogs.com/lchzls/p/5781755.html
Copyright © 2011-2022 走看看