今天是貝茜的生日,為了慶祝自己的生日,貝茜邀你來玩乙個遊戲.貝茜讓n(1≤n≤100000)頭奶牛坐成乙個圈.
除了1號與n號奶牛外,i號奶牛與i-l號和i+l號奶牛相鄰.n號奶牛與1號奶牛相鄰.農夫約翰用很多紙條裝滿了一
個桶,每一張包含了乙個獨一無二的1到1,000,000的數字.接著每一頭奶牛i從柄中取出一張紙條ai.每頭奶牛輪
流走上一圈,同時拍打所有編號能整除在紙條上的數字的牛的頭,然後做回到原來的位置.牛們希望你幫助他們確
定,每一頭奶牛需要拍打的牛.
輸入第1行包含乙個整數n,接下來第2到n+1行每行包含乙個整數ai.
輸出第1到n行,每行的輸出表示第i頭奶牛要拍打的牛數量.
樣例輸入
5 //有五個數,對於任乙個數來說,其它的數有多少個是它的約數21
234輸出
2021
3看題目首先想到奶牛持有的卡號被整除的次數為多少,因此直接ans[a[i]]。但是當資料過大時會超時,因此直接的篩法會炸。
80分程式:
#includeusing namespace std;
const int n=1000001;
int n;
int a[n],cnt[n],s[n];
int main()
for(int i=1;i<=n;i++)
for(int j=i;j<=n;j+=i)
s[j]+=cnt[i];
for (int i=0;iac程式:
#include using namespace std;
int a[100005], b[1000005], ans[1000005];
int main()
for(int i = 1; i <= mx; i++)
}for(int i = 1; i <= n; i++)cout
}
數學基礎 質數(輕拍牛頭)
問題描述 原題來自 usaco 2008 dec.silver 今天是貝茜的生日,為了慶祝自己的生日,貝茜邀你來玩乙個遊戲。貝茜讓 n頭奶牛坐成乙個圈。除了 1 號與 n 號奶牛外,i 號奶牛與 i 1號和 i 1 號奶牛相鄰,n 號奶牛與 1號奶牛相鄰。農夫約翰用很多紙條裝滿了乙個桶,每一張包含了...
acwing 1291 輕拍牛頭
acwing 1291.輕拍牛頭 如果直接用暴力解法,逐個判斷其他的數是不是它的約數,這樣時間複雜度是o n 2 o n 2 o n2 資料規模是105 10 5 105,會超時 假設a 1a 1 a1 是a 2a 2 a2 的約數的話,那麼a 2a 2 a2 就是a 1a 1 a1 的倍數,因此可...
BZOJ 1607 輕拍牛頭
time limit 3 sec memory limit 64 mb submit 1245 solved 650 submit status discuss 今天是貝茜的生日,為了慶祝自己的生日,貝茜邀你來玩乙個遊戲 貝茜讓n 1 n 100000 頭奶牛坐成乙個圈 除了1號與n號奶牛外,i號奶...