早教吧作业答案频道 -->数学-->
acm简单的问题一直wronganswer有一些三个整数构成的整数群,它的结构是:第一行整数N表示后面有N个几个整数群,每个整数群由三个整数组成.尝试用+、-、×、/(整除)来凑前两个数的计算结果
题目详情
acm简单的问题一直wrong answer
有一些三个整数构成的整数群,它的结构是:第一行整数N表示后面有N个几个整数群,每个整数群由三个整数组成.尝试用+、-、×、/(整除)来凑前两个数的计算结果,以图与第三个整数相等.如果能凑到相等,则输出该表达式,否则,输出None.输入将保证若表达式存在,则一定唯一.
Sample Input:
5
123 1234 10
12 34 22
12 12 24
5678910 7 56789
9 4 2
Sample Output:
1234/123=10
34-12=22
12+12=24
None
9/4=2
程序如下
#include
#include
#include
#include
using namespace std;
string convertToString(double x)
{
\x05ostringstream o;
\x05if(on;
\x05for(int j=0;j>a>>b>>c;
\x05
\x05\x05if(a+b==c)
\x05\x05{
\x05\x05\x05s=convertToString(a)+"+"+convertToString(b)+"="+convertToString(c);
\x05\x05\x05v.push_back(s);
\x05\x05\x05continue;
\x05\x05}
\x05\x05if(a-b==c||b-a==c)
\x05\x05{
s=convertToString(a>b?a:b)+"-"+convertToString(b>a?a:b)+"="+convertToString(c);
\x05\x05\x05v.push_back(s);
\x05\x05\x05continue;
\x05\x05}
if(a*b==c)
\x05\x05{
s=convertToString(a)+"*"+convertToString(b)+"="+convertToString(c);
\x05\x05\x05v.push_back(s);
\x05\x05\x05continue;
\x05\x05}
\x05\x05if(a/b==c||b/a==c)
\x05\x05{
s=convertToString(a>b?a:b)+"/"+convertToString(b>a?a:b)+"="+convertToString(c);
\x05\x05\x05v.push_back(s);
\x05\x05\x05continue;
\x05\x05}
\x05\x05else
\x05\x05\x05v.push_back("None");
\x05}
\x05for(int i=0;i
有一些三个整数构成的整数群,它的结构是:第一行整数N表示后面有N个几个整数群,每个整数群由三个整数组成.尝试用+、-、×、/(整除)来凑前两个数的计算结果,以图与第三个整数相等.如果能凑到相等,则输出该表达式,否则,输出None.输入将保证若表达式存在,则一定唯一.
Sample Input:
5
123 1234 10
12 34 22
12 12 24
5678910 7 56789
9 4 2
Sample Output:
1234/123=10
34-12=22
12+12=24
None
9/4=2
程序如下
#include
#include
#include
#include
using namespace std;
string convertToString(double x)
{
\x05ostringstream o;
\x05if(on;
\x05for(int j=0;j>a>>b>>c;
\x05
\x05\x05if(a+b==c)
\x05\x05{
\x05\x05\x05s=convertToString(a)+"+"+convertToString(b)+"="+convertToString(c);
\x05\x05\x05v.push_back(s);
\x05\x05\x05continue;
\x05\x05}
\x05\x05if(a-b==c||b-a==c)
\x05\x05{
s=convertToString(a>b?a:b)+"-"+convertToString(b>a?a:b)+"="+convertToString(c);
\x05\x05\x05v.push_back(s);
\x05\x05\x05continue;
\x05\x05}
if(a*b==c)
\x05\x05{
s=convertToString(a)+"*"+convertToString(b)+"="+convertToString(c);
\x05\x05\x05v.push_back(s);
\x05\x05\x05continue;
\x05\x05}
\x05\x05if(a/b==c||b/a==c)
\x05\x05{
s=convertToString(a>b?a:b)+"/"+convertToString(b>a?a:b)+"="+convertToString(c);
\x05\x05\x05v.push_back(s);
\x05\x05\x05continue;
\x05\x05}
\x05\x05else
\x05\x05\x05v.push_back("None");
\x05}
\x05for(int i=0;i
▼优质解答
答案和解析
没考虑右边数是负数的情况,比如12-34=-22 -6/3=-2
解决方法就是if(a/b==c||b/a==c) 还有if(a-b==c||b-a==c) 不要写成这种或的形式 直接判断到底是a-b=c还是b-a=c,然后输出即可
另外不用把所有的结果存起来一起输出.得到一个结果就cout输出一个结果即可.这样避免很多麻烦.
解决方法就是if(a/b==c||b/a==c) 还有if(a-b==c||b-a==c) 不要写成这种或的形式 直接判断到底是a-b=c还是b-a=c,然后输出即可
另外不用把所有的结果存起来一起输出.得到一个结果就cout输出一个结果即可.这样避免很多麻烦.
看了 acm简单的问题一直wron...的网友还看了以下:
细心做一做从2开始,连续的偶数相加,它们的和的情况如下:加数的个数和12=1*222+4=6=2* 2020-04-07 …
从2开始,连续的偶数相加,它们的情况如下:加数的个数ns12=1*222+4=6=2*332+4+ 2020-04-07 …
做一做,从2开始,连续的偶数相加,它们的和如下相加的个数和s12=1*222+4+=6=2*332 2020-04-07 …
若一个自然数中的某一个数字等于其它所有数字之和,则称这样的数为S数,(例:561,6=5+1),则 2020-04-07 …
关于一道数学题的一元一次方程的解法物体从高空自由落下时,经过距离S之间有S=2/1GT(2)的关系 2020-04-26 …
德语:词典中对名词的解释(-s,-s)分别代表什么?德语:词典中对名词的解释(-s,-s)分别代表 2020-05-17 …
设两个关系C和SC如下,它们的主键分别是C#和(S#,C#),除属性GRADE的数据类型是整数外,其 2020-05-24 …
留数定理求待定系数X(s)=分子:3s^2+2s+8.分母:s(s+2)(s^2+2s+4).(s 2020-06-04 …
怎样根据电子排布式得出能级组数和价电子数?元素的原子序数为21.它有多少个能级组?多少个原子轨道? 2020-06-11 …
加速度到底有没有方向?一个物体初速度是4m/s末速度是0m/s,它的加速度就为负数..这个负数不是 2020-06-16 …