zoukankan      html  css  js  c++  java
  • HDU 1720 A+B Coming

    A+B Coming

    Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 5856    Accepted Submission(s): 3839


    Problem Description
    Many classmates said to me that A+B is must needs.
    If you can’t AC this problem, you would invite me for night meal. ^_^
     

    Input
    Input may contain multiple test cases. Each case contains A and B in one line.
    A, B are hexadecimal number.
    Input terminates by EOF.
     

    Output
    Output A+B in decimal number in one line.
     

    Sample Input
    1 9 A B a b
     

    Sample Output
    10 21 21
     

    Author
    威士忌
     

    Source





    解题思路:水题一枚。就是十六进制的A+B,仅仅要把算得的结果用十进制输出就可以。

    只是还是非常恶心的wa了几次。。





    AC代码:

    #include <iostream>
    #include <string>
    #include <cstdio>
    #include <cmath>
    using namespace std;
    
    int main(){
    //	freopen("in.txt", "r",stdin);
    	string a, b;
    	int x, y;
    	while(cin>>a>>b){
    		int len = a.size();
    		int cnt1 = 0;
    		int k = 0;
    		while(len){
    			char x = a[len-1];
    			if(x>='0' && x<='9')  cnt1 += (x - '0')*pow(16, k);
    			else if(x>='a' && x<='f')  cnt1 += (x - 'a' + 10)*pow(16, k);
    			else  cnt1 += (x - 'A' + 10)*pow(16, k);
    			len --;
    			k ++;
    		}
    		len = b.size();
    		int cnt2 = 0;
    		k = 0;
    		while(len){
    			char x = b[len-1];
    			if(x>='0' && x<='9')  cnt2 += (x - '0')*pow(16, k);
    			else if(x>='a' && x<='f')  cnt2 += (x - 'a' + 10)*pow(16, k);
    			else  cnt2 += (x - 'A' + 10)*pow(16, k);
    			len --;
    			k ++;
    		}
    		
    		cout<<(cnt1 + cnt2)<<endl;
    	}
    	return 0;
    }






  • 相关阅读:
    git使用(1) --git本地基础操作
    openCV在ubuntu上的使用(0)
    x86汇编指令整理
    读书笔记--鸟哥的linux_2
    读书笔记--鸟哥的linux_1
    #转 c语言中.h文件的作用
    读书笔记--《java语言程序设计--基础篇》
    matlab plot
    关于天文中的坐标系的介绍
    FIR的学习1
  • 原文地址:https://www.cnblogs.com/mfmdaoyou/p/6955202.html
Copyright © 2011-2022 走看看