codeforces 258div2 A Game With Sticks(DP)

题目链接:http://codeforces.com/contest/451/problem/A

解题报告:有n跟红色的棍子横着放,m根蓝色的棍子竖着放,它们形成n*m个交点,两个人轮流在里面选择交点,选到的交点将把经过这个点的棍子都拿掉,最后没有点可选的人输,另一方赢。

n*m个交点不管选哪个点取效果都是一样的,dp[n][m] = !dp[n-1][m-1]   (n > 1 && m >1)

 1 #include<cstdio>
 2 #include<cstring>
 3 #include<iostream>
 4 #include<algorithm>
 5 using namespace std;
 6 int ans[105][105];
 7 void dabiao()
 8 {
 9     memset(ans,0,sizeof(ans));
10     for(int i = 1;i <= 100;++i)
11     for(int j = 1;j <= 100;++j)
12     if(i == 1 || j == 1)
13     ans[i][j] = 0;
14     else ans[i][j] = !ans[i-1][j-1];
15 }
16 int main()
17 {
18     int n,m;
19     dabiao();
20     while(scanf("%d%d",&n,&m)!=EOF)
21     printf(ans[n][m]? "Malvika
":"Akshat
");
22     return 0;
23 }
View Code
原文地址:https://www.cnblogs.com/xiaxiaosheng/p/3868078.html