分析:打個表,會發現a1,a2中較小的乙個數會出現很多次,把這些數刪掉,就會形成若干個等差數列,每個等差數列中新出現的數的個數是a1a2較大者除以較小者.之後取個餘,繼續做重複的操作就行了.
#include #include#include
#include
using
namespace
std;
int n, p, k, f[1010][1010], a[1010], pos[1010
];int
main()
for (int i = 1; i <= p; i++)
for (int j = 2; j <= f[i][0]; j++)
for (int i = 1; i <= n; i++)
printf(
"%d
", a[i]);
return0;
}
noip模擬賽 數列
a 1 a 2 a 3 1 a x a x 3 a x 1 x 3 求a數列的第n項對1000000007 10 9 7 取餘的值。輸入格式 第一行乙個整數t,表示詢問個數。以下t行,每行乙個正整數n。輸出格式 每行輸出乙個非負整數表示答案。輸入樣例 1 368 10 輸出樣例 1 4 919 對於...
NOIP模擬賽 數列
problem 2 數列 seq.cpp c pas 題目描述 a 1 a 2 a 3 1 a x a x 3 a x 1 x 3 求a數列的第n項對1000000007 10 9 7 取餘的值。輸入格式 第一行乙個整數t,表示詢問個數。以下t行,每行乙個正整數n。輸出格式 每行輸出乙個非負整數表示...
NOIP模擬賽 等差數列
題目描述 麥克在第一張紙上寫下了n個十進位制實數。然後,對於每個實數,他都寫下了乙個從0開始,以該數為公差的等差數列。比如當前數為x,則他寫的等差數列為0,x,2x,3x,接下來,他把第一張紙上的所有在區間 a,b 中的數挑選出來,剔除掉重複的,按公升序寫在第二張紙上。但第二天,他把第一張紙弄丟了。...