HDU 2106 decimal system(进制转换+模拟)
2016-05-14 00:12
267 查看
decimal system
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4367 Accepted Submission(s): 2476
[align=left]Problem Description[/align]
As we know , we always use the decimal system in our common life, even using the computer. If we want to calculate the value that 3 plus 9, we just import 3 and 9.after calculation of computer, we will
get the result of 12.
But after learning <<The Principle Of Computer>>,we know that the computer will do the calculation as the following steps:
1 computer change the 3 into binary formality like 11;
2 computer change the 9 into binary formality like 1001;
3 computer plus the two number and get the result 1100;
4 computer change the result into decimal formality like 12;
5 computer export the result;
In the computer system there are other formalities to deal with the number such as hexadecimal. Now I will give several number with a kind of change method, for example, if I give you 1011(2), it means 1011 is a number in the binary system, and 123(10) means
123 if a number in the decimal system. Now I will give you some numbers with any kind of system, you guys should tell me the sum of the number in the decimal system.
[align=left]Input[/align]
There will be several cases. The first line of each case contains one integers N, and N means there will be N numbers to import, then there will be N numbers at the next N lines, each line contains a number
with such form : X1….Xn.(Y), and 0<=Xi<Y, 1<Y<=10. I promise you that the sum will not exceed the 100000000, and there will be at most 100 cases and the 0<N<=1000.
[align=left]Output[/align]
There is only one line output case for each input case, which is the sum of all the number. The sum must be expressed using the decimal system.
[align=left]Sample Input[/align]
3 1(2) 2(3) 3(4) 4 11(10) 11(2) 11(3) 11(4)
[align=left]Sample Output[/align]
6 23
[align=left]Source[/align]
HDU 2007-6 Programming Contest
题解:进制转换+模拟
AC代码:
#include<iostream> #include<memory.h> #include<cstdlib> #include<cstdio> #include<cmath> #include<cstring> #include<string> #include<cstdlib> #include<iomanip> #include<vector> #include<list> #include<map> #include<algorithm> typedef long long LL; using namespace std; int f(int m,int n) { int sum=0; int p=1; while(m) { sum+=(m%10)*p; p=p*n; m=m/10; } return sum; } int main() { int n,x,y,sum; while(cin>>n) { sum=0; for(int i=0;i<n;i++) { scanf("%d(%d)",&x,&y); sum+=f(x,y); } printf("%d\n",sum); } return 0; }
相关文章推荐
- 2012年第三届蓝桥杯C/C++程序设计本科B组决赛 数据压缩(代码填空)
- 2012年第三届蓝桥杯C/C++程序设计本科B组决赛 星期几(结果填空)
- java多线程系列1--线程实现与调度
- JAVA文件中获取路径及WEB应用程序获取路径方法
- 关于bug
- 编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推
- 2012年第三届蓝桥杯C/C++程序设计本科B组决赛
- bzoj3295【CQOI2011】动态逆序对
- win7 64位安装redis 及Redis Desktop Manager使用
- MyBatis主流程分析之(二)-打开会话和数据库操作
- Java获取WEB目录路径
- ViewPager三个步骤
- 主席树入门+模板 POJ 2104
- java-web易错汇总
- Qt(三)--- 实现QQ登陆界面头像状态栏的功能
- Java设计模式之策略设计模式
- new TextView
- POJ 1053 Integer Inquiry (大数加法,还是Java大法好)
- git的学习笔记(与小伙伴协作)
- POJ-3281 Dining (最大流[Ford-Fulkerson])