C.沒有什麼好說的直接計數排序即可
D.好好複習一下概率DP(白學了)
- 我們好好看看想想:對於每一天會隨機等概率產生一個魔法球:我們可以想到什麼
概率Dp沒錯吧:e[i][j]=e[i][j−1]∗i/n+e[i−1][j−1]∗(n−i+1)/n
- 我們好好看看想想:對於每一天會隨機等概率產生一個魔法球:我們可以想到什麼
dp[0] = 1;
for(int n = 1; d <= 1000; n++) {
for(int x = k; x > 0; --x)
dp[x] = (x * dp[x] + (k - x + 1) * dp[x - 1]) / k;
while(d <= 1000 && 2000 * dp[k] >= (d - eps)) {
ans[d] = n;
d++;
}
dp[0] = 0;
}
- E.來,入門博弈。。。
- 對於這種博弈題我們是很 容易看出來的
對於該題噁心的限制我們可以通過把每堆的石頭分成1,2,3,4,5......n 個部分
把每個部分當成一個石頭即可
- 對於這種博弈題我們是很 容易看出來的
int main() {
int n,x,f=0;
cin>>n;
while(n--) {
scanf("%d",&x);
int i=1,k=1;
while(x>=i)x-=i,k=i++;
f^=k;
}
puts(f?"NO":"YES");
}