在 spoj AP2 上弄错了
getting wrong anwers on spoj AP2
我正在解决一个问题 SPOJ AP2
您将获得第 3学期、第 3 学期和系列的总和。您需要系列和系列的打印长度。
使用的逻辑 ->第一个术语+最后一个术语=第三个术语+第三个术语
sum=n/2(first+last)
我尝试了许多测试用例,我在所有这些测试用例中都得到了正确的输出但是在 spoj 上我得到错误的答案"WA"
#include<iostream>
using namespace std;
int main(){
int t;
cin>>t;
while(t--){
long long int third;
long long int thirdlast;
long long int sum;
cin>>third>>thirdlast>>sum;
long long int n=(2*sum)/(third+thirdlast);
long long int d= (thirdlast-third)/(n-5); //(2*thirdlast-third*n+3*third)/(5-n);
long long int a=(third-2*d);
//cout<<n<<endl;
//cout<<d<<endl;
//int d=0;
for(int i=1;i<=n;i++){
long long int temp=d*(i-1);
// int t=a+d;
cout<<a+temp<<" ";
}
cout<<endl;
}
}
您可能在此行溢出:
n=(2*sum)/(third + thirdlast);
您可以通过以下方式避免溢出:
n = 2 * (sum/(third + thirdlast));
但是,由于third + thirdlast
可能不会sum
划分,因此您必须对其进行测试并在必要时添加n++
。
另一种解决方案是使用 unsigned long long
进行n
相关文章:
- #定义c-预处理器常量..我做错了什么
- 努力将整数转换为链表。不知道我在这里做错了什么
- 首要问题的答案让值班员搞错了
- 看起来is_nothrow_constructible_v()在MSVC中被破坏了,我错了吗
- .h 和.cpp文件分离时出错,但仅使用 .h 文件时没有错误.我做错了什么?
- 我的C++线程做错了什么?
- 如何正确使用 >=?(a+f()+c)>=0 错了吗?
- 谁能告诉我我用 getline 做错了什么 (cpp) 格式
- 没有输出的合并排序我做错了什么?
- 我正在尝试使用 while 循环从字符串中删除字母,直到没有字母。我在这里做错了什么?
- 在C++中使用 AKS 素数测试计算双胞胎素数 我做错了什么?
- 指针相关的UE4崩溃.我的指针哪里错了?
- 我一直试图弄清楚我在这个链表程序中做错了什么
- 我正在尝试学习如何在 c++ 中传递指针,但出现错误:没有用于调用"test"的匹配函数。我做错了什么?
- FFMPEG,C++,内存泄漏,我做错了什么?
- 我做错了什么?反向字符串 C++
- 我在这个课上做错了什么?
- 创建整数的 2D 数组,该数组将使用两个函数用随机数填充矩阵.我做错了什么?
- 在不使用内置库函数的情况下添加字符串,我做错了什么?
- 在 spoj AP2 上弄错了