永发信息网

杭电2058,,,求救,为什么测试的都对,可是WA吖

答案:3  悬赏:0  手机版
解决时间 2021-03-23 21:43
  • 提问者网友:蓝莓格格巫
  • 2021-03-23 15:56
#include
#include
using namespace std;
int main(void)
{
double n,m,len,a0;
while(cin>>n>>m,n+m)
{
len=(int)(sqrt(2.0*m+0.25)-0.5);
while(len)
{
a0=m/len-(len-1.0)/2.0;
if(a0==(int)a0)
{
if((int)a0+len-1>n) break;
cout<<'['<<(int)a0<<','<<(int)a0+len-1<<']'< }
len--;
}
cout< }
return 0;
}
最佳答案
  • 五星知识达人网友:何以畏孤独
  • 2021-03-23 17:30
没看,但应该是精度问题,例如a==int(a)这样有时候是不合适的,可以改成abs(a-int(a))<1e-6
全部回答
  • 1楼网友:怀裏藏嬌
  • 2021-03-23 17:59
[2,5]的和是2+3+4+5=14不是10
  • 2楼网友:英雄的欲望
  • 2021-03-23 17:51
你好! [2,5]的和是2+3+4+5=14不是10 打字不易,采纳哦!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯