題意是現在有n個雕像把乙個圓等分了,每乙個雕像有乙個吸引力。
叫你不移動雕像只去掉雕像讓剩下的雕像還能等分這個圓,求剩下的雕像的吸引力之和的最大值。
顯然去掉後剩下雕像的間隔應該是n的因子,因為這樣才能使剩下的雕像等分圓。
這道題資料量不大,可以暴力列舉,模擬出每一種情況取最大值就可以了。
現在我們分析完這道題了,寫一下步驟。
1.求出n的因子存在list中。
for(int i = 1;i <= n/3; i++)
2.遍歷因子(因子是可以去取的間隔),遍歷從1到因子作為第乙個取的雕像(因為是乙個圓,間隔相等有多種情況)。
現在第乙個雕像和間隔都確定了,只需要求和更新答案就好了。
int ans = -1000*20000加點注釋,上上**;
intsum;
for(it = l.begin(); it != l.end(); it++)
ans =max(ans,sum);}}
cout
<< ans << endl;
#include usingnamespace
std;
int a[20005
]; list
l; //
用來存 n的因子
list ::iterator it;
intmain()
//for(it = l.begin();it != l.end(); it++)
for(int i = 1;i <= n; i++)
int ans = -1000*20000; //
可能的最小值。
int sum; //
對某一種情況求和
//遍歷因子,即為間隔
for(it = l.begin(); it != l.end(); it++)
//更新答案
ans =max(ans,sum);}}
cout
<< ans <
return0;
}
51nod 1414 冰雕 思維 暴力
1414 冰雕 codeforces 基準時間限制 1 秒 空間限制 131072 kb 分值 20 難度 3級演算法題 白蘭大學正在準備慶祝成立256周年。特別任命副校長來準備校園的裝扮。校園的中心豎立著n個冰雕。這些雕像被排在乙個等分圓上,因此他們形成了乙個正n多邊形。這些冰雕被順針地從1到n編...
51Nod 1414 冰雕問題
白蘭大學正在準備慶祝成立256周年。特別任命副校長來準備校園的裝扮。校園的中心豎立著n個冰雕。這些雕像被排在乙個等分圓上,因此他們形成了乙個正n多邊形。這些冰雕被順針地從1到n編號。每乙個雕有乙個吸引力t i 校長來看了之後表示不滿意,他想再去掉幾個雕像,但是剩下的雕像必須滿足以下條件 剩下的雕像必...
51NOD 1414 冰雕 思維
1.0 秒 131,072.0 kb 20 分 3級題白蘭大學正在準備慶祝成立256周年。特別任命副校長來準備校園的裝扮。校園的中心豎立著n個冰雕。這些雕像被排在乙個等分圓上,因此他們形成了乙個正n多邊形。這些冰雕被順針地從1到n編號。每乙個雕有乙個吸引力t i 校長來看了之後表示不滿意,他想再去掉...