P1147 連續自然數和

2021-09-26 06:45:24 字數 900 閱讀 5967

對乙個給定的自然數mm,求出所有的連續的自然數段,這些連續的自然數段中的全部數之和為mm。

例子:1998+1999+2000+2001+2002=100001998+1999+2000+2001+2002=10000,所以從19981998到20022002的乙個自然數段為m=10000m=10000的乙個解。

包含乙個整數的單獨一行給出m的值(10≤m≤2,000,00010≤m≤2,000,000)。

每行兩個自然數,給出乙個滿足條件的連續自然數段中的第乙個數和最後乙個數,兩數之間用乙個空格隔開,所有輸出行的第乙個按從小到大的公升序排列,對於給定的輸入資料,保證至少有乙個解。

#include #include #include #include #include #include #include #include #include #include #include #include //#include using namespace std;

int n=0,m=0,l;

struct node;

bool cmp(node a,node b));

for(int i=2;i<=sqrt(n);i++)

if(n%i==0));

if(i%2==1&&t>i/2)list.push_back();

if(t%2==1&&t/2-i>0)list.push_back();

else if(t%2==0&&i/2-t>0)list.push_back();

}sort(list.begin(), list.end(), cmp);

for (int i=0; iprintf("%d %d\n",list[i].s,list[i].e);

return 0;

}

P1147 連續自然數和

對乙個給定的自然數m,求出所有的連續的自然數段,這些連續的自然數段中的全部數之和為m。例子 1998 1999 2000 2001 2002 10000,所以從1998到2002的乙個自然數段為m 10000的乙個解。輸入格式 包含乙個整數的單獨一行給出m的值 10 m 2,000,000 輸出格式...

P1147 連續自然數和

對乙個給定的自然數m,求出所有的連續的自然數段,這些連續的自然數段中的全部數之和為m。例子 1998 1999 2000 2001 2002 10000,所以從1998到2002的乙個自然數段為m 10000的乙個解。輸入格式 包含乙個整數的單獨一行給出m的值 10 m 2,000,000 輸出格式...

P1147 連續自然數和

題目描述 對乙個給定的自然數m,求出所有的連續的自然數段,這些連續的自然數段中的全部數之和為m。例子 1998 1999 2000 2001 2002 10000,所以從1998到2002的乙個自然數段為m 10000的乙個解。輸入格式 包含乙個整數的單獨一行給出m的值 10 m 2,000,000...