hdu2149 巴什博奕
生活随笔
收集整理的這篇文章主要介紹了
hdu2149 巴什博奕
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
n表示先手勝 p表示先手負
1~N N+1 N+2~2*N+1 2*N+2 2*N+3~3*N+2 ...
n p n p n ...
m總歸個數 每次取1~N個
根據前面的規律得到,如果m/N==m%N 那么必輸,不然必勝。(可能不嚴謹,有些題目會錯)
換一個角度就是每次要給對手留下(n+1)*k+s(k為整數)這樣先手必勝。
也就是說m%(n+1)!=0,那么先手必勝。
#include<stdio.h> #include<string.h> #define maxn 1100 int main() {int i,n,m;while(scanf("%d%d",&n,&m)!=EOF){if(m>=n){for(i=n;i<=m;i++)if(i==n)printf("%d",i);else printf(" %d",i);printf("\n");}else if(n/m==n%m)printf("none\n");else{printf("%d\n",n%(1+m));}} }?
轉載于:https://www.cnblogs.com/sweat123/p/4749803.html
總結
以上是生活随笔為你收集整理的hdu2149 巴什博奕的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: POJ - 3846 Mountain
- 下一篇: 3.git版本控制-管理修改、撤销、删除