5773 NOIP2008模擬 簡單數學題

2021-09-03 00:04:38 字數 2730 閱讀 2414

description

話說, 小x是個數學大佬,他喜歡做數學題。

有一天,小x想考一考小y。他問了小y一道數學題。題目如下:      對於乙個正整數n,存在乙個正整數t(0

使得的值是正整數。

小x給出n,讓小y給出所有可能的t。如果小y不回答這個神奇的大佬的簡單數學題,他學神的形象就會支離破碎。所以小y求你幫他回答小x的問題。

input

乙個整數n。

output

第乙個數m,表示對於正整數n,存在m個不同的正整數t,

使得是整數。

後面是m個數,每乙個數代表可能的正整數t(按從小到大的順序排列)。

solutions

設這個式子=k,得t=(2k-2)/(2k-1)*n,

然後只需列舉n的因數,判斷2k-1等於因數時,是否為整數。

是,算出t,統計答案即可。

**

1

var2

n,m:int64;

3 a:array [0..100001] of

int64;

4procedure

qsort(l,r:longint);

5var

6i,j:longint;

7mid,t:int64;

8begin

9if l>r then

exit;

10 i:=l; j:=r;

11 mid:=a[(l+r) div2];

12repeat

13while a[i]do

inc(i);

14while a[j]>mid do

dec(j);

15if i<=j then

16begin

17 t:=a[i]; a[i]:=a[j]; a[j]:=t;

18inc(i); dec(j);

19end;20

until i>j;

21qsort(i,r);

22qsort(l,j);

23end;24

25procedure

main;

26var

27i:longint;

28k,t:int64;

29begin

30 m:=0;31

for i:=1

to trunc(sqrt(n)) do

32if n mod i=0

then

33begin

34if (i+1) mod

2=0then

35begin

36 k:=(i+1) div2;

37 t:=(k+k-2)*(n div

i);38

if (t>0) and (tthen

39begin

40inc(m);

41 a[m]:=t;

42end;43

end;

44if (n div i+1) mod

2=0then

45begin

46 k:=(n div i+1) div2;

47 t:=(k+k-2)*i;

48if (t>0) and (tthen

49begin

50inc(m);

51 a[m]:=t;

52end;53

end;

54end;55

end;

5657

procedure

print;

58var

59i,t:longint;

60begin

61 t:=0;62

for i:=1

to m-1

do63

if a[i]=a[i+1] then

64inc(t);

65 write(m-t);

66for i:=1

to m do

67if a[i]<>a[i+1] then

68 write('

',a[i]);

69end;70

71begin

72 assign(input,'

math.in');

73 assign(output,'

math.out');

74reset(input);

75rewrite(output);

76readln(n);

77main;

78 qsort(1

,m);

79print;

80close(input);

81close(output);

82end.

5791 NOIP2008模擬 階乘

description 有n個正整數a i 設它們乘積為p,你可以給p乘上乙個正整數q,使p q剛好為正整數m的階乘,求m的最小值。input 共兩行。第一行乙個正整數n。第二行n個正整數a i output 共一行 乙個正整數m。solutions 可以把p分解質因數,假設p ai bi ai為質...

noip2008 ISBN號碼 (模擬)

a1163.isbn號碼 時間限制 1.0s 記憶體限制 256.0mb 總提交次數 691ac次數 268 平均分 62.95 將本題分享到 檢視未格式化的試題 提交試題討論 試題 noip2008 普及組 問題描述 每一本正式出版的圖書都有乙個isbn號碼與之對應,isbn碼包括9位數字 1位識...

5809 NOIP2008模擬 數羊

description 牧羊人a和牧羊人b總是很無聊,所以他們要玩乙個遊戲。a有a隻羊,b有b隻羊。他們想要知道a b的因子和是多少。這就很為難兩個牧羊人了,由於答案太大,你能不能告訴我答案取模9901的數。input 僅一行,為兩個正整數a和b。output a b的因子和對9901的餘數。sol...