bzoj 3191 JLOI2013 卡牌遊戲

2021-08-10 05:39:51 字數 523 閱讀 7177

問每乙個人在約瑟夫問題勝出的概率。

一開始我想了個三維的dp。

然後被tybd。

其實不難發現,真正有價值的是當前計算的人與當前莊家的距離。

所以設f[i

][j]

表示剩下i個人,離莊家距離為j的人勝出的期望。

隨便轉移下就好了。

code:

#include

#include

#include

#include

using

namespace

std;

double f[55][55];

int n,m,a[55];

int dis(int x,int y,int num) //在num個人的情況下,y裡x的距離

double dfs(int x,int y)//x個人,距離莊家y的人贏的期望。

return f[x][y];

}int main()

bzoj3191 JLOI2013 卡牌遊戲

time limit 10 sec memory limit 128 mb submit 410 solved 275 submit status discuss n個人坐成一圈玩遊戲。一開始我們把所有玩家按順時針從1到n編號。首先第一回合是玩家1作為莊家。每個回合莊家都會隨機 即按相等的概率 從卡...

bzoj3191 JLOI2013 卡牌遊戲

time limit 10 sec memory limit 128 mb submit 451 solved 308 submit status discuss n個人坐成一圈玩遊戲。一開始我們把所有玩家按順時針從1到n編號。首先第一回合是玩家1作為莊家。每個回合莊家都會隨機 即按相等的概率 從卡...

BZOJ3191 JLOI2013 卡牌遊戲

time limit 10 sec memory limit 128 mb submit 642 solved 433 submit status discuss n個人坐成一圈玩遊戲。一開始我們把所有玩家按順時針從1到n編號。首先第一回合是玩家1作為莊家。每個回合莊家都會隨機 即按相等的概率 從卡...