原创 POJ2151:Check the difficulty of problems(概率DP)

題意: 有T支隊伍,M道題,每隊最少做一題,冠軍最少做n道題,給出第i隊出第j題的概率 思路:不會寫看了別人的題解才過的我覺得s[i][k]表示的是比賽結束時第i隊最多出k題目的概率#include<stdio.h> #define N

原创 Help Me Escape ZOJ - 3640

題意: cain在山洞裏,自身有戰力 f,有n條路可以粗去,隨機選一條路走, 路的難度爲 c[i],如果c[i]>=f,一天後cain回到山洞,戰力變爲c[i]+f 否則經過v[i]天,cain可以通過這條路離開,問cain離開洞穴需要天

原创 Maze HDU - 4035 hdu

題意: 一道過程很有趣的概率dp 在一棵樹上 你在節點1(根節點), 每個節點有一定概率k[i]被殺回到1號根節點,和一定概率e[i]逃離迷宮 還有剩下的概率往下一步走可以走向相鄰的任何節點 問離開迷宮走的步數的期望是多少? 思路: 這個

原创 2017 ACM-ICPC 西安網絡賽 Trig Function

題意: f(cos(x))=cos(n∗x) 對任意x都成立,問x^m在f(x)中的係數是多少? 思路: 由於網絡賽,馬上想到了傅里葉展開,或者泰勒展開,發現好像都不行 乾脆直接百度到倍角公式 lucas定理可以求出較大的組合數,這裏

原创 hdu5728PowMod

題目: 給定 n,m,p 先得到   k=∑mi=1φ(i∗n) mod 1000000007k=∑mi=1φ(i∗n) mod 1000000007 其中n爲非平方數 再計算ans=kkkk...k mod p 這裏有無窮個k 思路:

原创 HDU 6134 Battlestation Operational

題意: 求       f(n)=∑i=1n∑j=1i⌈ij⌉[(i,j)=1] 思路: 比賽的時候不會寫,看了別人的博客半天才看懂,看來理解還是不夠深啊 這裏就不推導了 重新對歐拉函數,莫比烏斯函數,還有那個因子數的積性有了新的理解 歐

原创 (2017多校訓練第七場)HDU - 6129 Just do it

題意: 給出 n,m , 和 a1,a2.........an 每次操作都會有,bi=a1^a2^a3^...ai    ('^'爲異或) 求m次操作後的序列 思路: 比賽的時候一直在想找規律,發現了循環,就覺得這是正確方向,最後可以在O

原创 2017 ACM-ICPC 亞洲區(西安賽區)網絡賽 Coin

題意: 拋擲一枚硬幣,正面朝上的概率是p/q (p/q <=0.5),拋擲k次,偶數次朝上的概率是X/Y,求\frac{q}{p}(\frac{q}{p} \le \frac{1}{2})X/Ymod(1e9+7) 思路: 這是一個二項

原创 hdu 6202 cube cube cube 瀋陽區域賽網絡賽 (膜擬)

題意: 給一個特殊魔方的顏色圖案,問你能不能在三步內還原魔方 如果不懂魔方的轉動可以看這個視頻 http://www.bilibili.com/video/av8452301/?from=search&seid=1175027010095

原创 HDU 4405 Aeroplane chess

題意: 飛行棋 n+1個格子 m條   flight lines  ,每條表示 a,b可以直接到達 問從0到 n,擲色子的次數的期望值 思路: 開始一直在想數組,v[i]保留的是從0出發達到i的期望  想了半天發現推不出來 看來題解(ht

原创 poj2096 Collecting Bugs

題意: 據說是一道經典老題了 一個程序員一次操作可以找到一個bug和一個subcomponent 問找到n個bug和n個subcomponent操作次數的數學期望是多少 思路: 又是套路 我們e[i][j]保留的是 當找到 i個 bug

原创 HDU3853:LOOPS

題意: 進入迷宮,從(1,1)走到(n,n) 花費2個magic power,可以改變自己的位置 在(i,j)時,有一定機率留在原地,有一定機率到達(i+1,j),有一定機率到達(i,j+1) 問到達(n,n)花費magic power的

原创 ZOJ 3329 One Person Game(概率DP,求期望)

題意: 拋三個色子,三個色子分別爲k1,k2,k3個面,如果拋出的色子第一個爲a,第二個爲b,第三個爲c這counter置0,否則加上(a+b+c) 思路: 還是不會啊果然太弱了 看了大佬們的博客慢慢的學會了點東西 同樣e[i]表示從i到

原创 uva 10870 Recurrences

題意: 給你d,n,m, a1,a2,a3,...... f(1),f(2),f(3),f(4)....... 定義:f(n) = a1f(n − 1) + a2f(n − 2) + a3f(n − 3) + . . . + ad f(n

原创 Codeforces 148D:Bag of mice

水題注意下遞推 #include<bits/stdc++.h> #define N 1001 using namespace std; double p[N][N]; int main() { int w,b; double ans,