JZOJ 列舉 連續自然數和

2021-09-10 06:23:43 字數 1193 閱讀 7856

對乙個給定的自然數m

mm,求出所有的連續的自然數段,這些連續的自然數段中的全部數之和為mmm

樣例輸入

10000
樣例輸出
18 142

297 328

388 412

1998 2002

原本我是這樣寫的

#include

#include

using

namespace std;

int n,k;

intread()

//快讀

while

(ch>=

'0'&&ch<=

'9')

return x*flag;

}void

write

(int x)

//快輸

if(x>9)

write

(x/10);

putchar

(x%10+48

);return;}

intmain()

}}fclose

(stdin);

fclose

(stdout);

return0;

}

但是,最大的據t了…

20000000
為了這幾秒我加了很多東西

register

快讀快輸

for語句減次數

最後還是放棄了,唉~

高斯速算

( a1

+an)

∗n/2

=m

(a_1+a_n)*n/2=m

(a1​+a

n​)∗

n/2=

m(首項+末項)*項數/2=等差數列的和

列舉首項,就可以求出末項了

#include

#include

#include

using

namespace std;

int n;

intmain()

fclose

(stdin);

fclose

(stdout);

return0;

}

連續自然數和

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

連續自然數和

題目描述 描述 description 對乙個給定的自然數m,求出所有的連續的自然數段 連續個數大於1 這些連續的自然數段中的全部數之和為m。例子 1998 1999 2000 2001 2002 10000,所以從1998到2002的乙個自然數段為m 10000的乙個解。輸入輸入格式 input ...

連續自然數平方和

22.連續自然數平方和 描述 提交自定義測試 題目描述 給你乙個數x,詢問有多少種連續自然數的平方和等於這個數,按照起始自然數由小到大的順序,輸出所有可能。輸入描述 輸入有多組,每組一行,乙個數x 輸出描述 對於每組資料,輸出多行 第一行,乙個數表示有多少種可能 以下每行輸出一種 第乙個數a是連續多...