Codeforces 731E 逆推(博弈)
2016-10-19 18:43
295 查看
题意:每个人每次拿一次往后拿一次前缀和,问在双方都选择最优策略的情况下(都尽量使自己减去对方的值最大),先手拿的减去后手拿的得分的值。
思路:因为是最优策略,每个人拿的是在考虑对方也是最优策略下的最优策略。
最后ans=a[s]+-a[i]+-a[i+t]+-….+-a
.每个a[i]的选择都是最优,也就是在后面最优的情况的最优解,但a
肯定有人要选,所以逆推,当一个人选了a
(这已经是那个人的最优解)另一人在这一基础上选一个最优解,直到没有为止。
思路:因为是最优策略,每个人拿的是在考虑对方也是最优策略下的最优策略。
最后ans=a[s]+-a[i]+-a[i+t]+-….+-a
.每个a[i]的选择都是最优,也就是在后面最优的情况的最优解,但a
肯定有人要选,所以逆推,当一个人选了a
(这已经是那个人的最优解)另一人在这一基础上选一个最优解,直到没有为止。
#include<bits/stdc++.h> using namespace std; #define mod 1000000007 #define PI acos(-1.0) #define INF 0x3f3f3f3f typedef long long LL; typedef unsigned long long ULL; int n,tot,i,a[200010]; int main() { scanf("%d",&n); for(i=1;i<=n;i++) scanf("%d",&a[i]),a[i]+=a[i-1]; tot=a ; for(i=n-1;i>1;i--) tot=max(tot,a[i]-tot); printf("%d\n",tot); }
相关文章推荐
- codeforces 493 D Vasya and Chess【 博弈 】
- codeforces 594A Warrior and Archer [对称博弈]【博弈】
- Codeforces 455B A Lot of Games(字典树+博弈)
- Codeforces 812E Sagheer and Apple Tree [树上尼姆博弈]
- codeforces 595C Warrior and Archer(博弈)
- codeforces 167C Wizards and Numbers(找规律,博弈)
- CodeForces - 859C Pie Rules DP(逆推)(思维好题)
- Codeforces 538E Demiurges Play Again(博弈DP)
- CodeForces 455B A Lot of Games 字典树 博弈
- codeforces 347 c Alice and Bob(博弈 && 数学)
- Codeforces 78C Beaver Game(数论、博弈)
- Codeforces - 493D. Vasya and Chess - 博弈
- CodeForces 347C Alice and Bob(博弈)
- Codeforces_841_B Godsend(思路|简单博弈)
- CodeForces - 859C Pie Rules DP(逆推)(思维好题)
- Codeforces 388C Fox and Card Game 博弈
- CodeForces 538E Demiurges Play Again(博弈dp)
- Codeforces 549C The Game Of Parity【博弈】
- codeforces 538E E. Demiurges Play Again(博弈+树形dp)
- [CodeForces 595C] Warrior and Archer (无胜负最优值博弈)