A-A+

16进制的简单运算

2012年09月12日 acm水题 评论 1 条 阅读 27 次

16进制的简单运算

时间限制:1000 ms  |  内存限制:65535 KB
难度:1
描述
现在给你一个16进制的加减法的表达式,要求用8进制输出表达式的结果。
输入
第一行输入一个正整数T(0<T<100000)
接下来有T行,每行输入一个字符串s(长度小于15)字符串中有两个数和一个加号或者一个减号,且表达式合法并且所有运算的数都小于31位
输出
每个表达式输出占一行,输出表达式8进制的结果。
样例输入
3
29+4823
18be+6784
4ae1-3d6c
样例输出
44114
100102
6565

看到这题泪奔了,我竟然还用string类存..my god!simple!人类总是爱把简单的东西复杂化...
[cpp]

#include<stdio.h>
int main()
{
int n,i,j;
char ch;
scanf("%d",&n);
while(n--)
{
scanf("%x%c%x",&i,&ch,&j);
if(ch=='+') printf("%on",i+j);
else printf("%on",i-j);
}
return 0;
}
[/cpp]

标签:

1 条留言  访客:0 条  博主:0 条   引用: 1 条

来自外部的引用: 1 条

  • 16进制的简单运算 | 编程

给我留言

Copyright © C/C++程序员之家 保留所有权利.   Theme  Ality 浙ICP备15011757号-3

用户登录