[도박 게임]

1141 단어
우리 학교 최고의 금메달리스트 앤리가 내게 준 문제
금메달리스트가 나에게 이 문제를 알려주었다.
세상에, 금메달리스트가 뜻밖에도 나에게 앤리의 문제를 주었구나.
처음엔 까만 꼬리표를 보며 별로 할 일이 없었지만 금메달리스트의 목에 반짝이는 금메달을 보는 진지한 눈빛
제가 한번 해보도록 하겠습니다.
그래서 기분 좋게 물문제를 하나 냈어요.
우리는\(dp[i][j]\)를 설정하여\(i\)회 게임을 진행하였으며, 이번 게임은 제\(j\)개의 주사위를 사용할 확률을 표시하였다.
우선 첫 번째 게임에 사용할 주사위가\(\pi (i)\) 와 관계가 있음을 초기화합니다
따라서\(dp[1][i]=\pi(i)*a[i][O[1]\)
이 주사위를 선택해서 이번에 필요한 포인트가 나올 확률을 곱하는 거예요.
그다음에 저희가 시계 돌리기.
하나의\(dp[i][j]\)에 대해 우리가 사용한 후에 주사위가 바뀔 수 있습니다. 그래서 우리는 다음에 바뀐 주사위를 일일이 열거합니다.\(k\) 이 주사위는 대응하는 포인트가 있어야 합니다.
그래서
\[dp[i+1][k]+=dp[i][j]*b[j][k]*a[k][O[i+1]]\]
마지막 답은\(\sum {i=1}^{n}dp[m][i]\)
코드
#include
#include
#include
#define re register
#define maxn 1005
#define eps 1e-6
#define M 51
double a[M][M],b[M][M];
double pi[M],dp[maxn][maxn];
int O[maxn];
int n,m,Q;
inline int check(double t,double k)
{
    if(t+eps>k&&t-eps

좋은 웹페이지 즐겨찾기