zoukankan      html  css  js  c++  java
  • XTU OJ 1209 Alice and Bob 2014(嘉杰信息杯ACM/ICPC湖南程序设计邀请赛暨第六届湘潭市程序设计竞赛)

    Problem Description

    The famous "Alice and Bob" are playing a game again. So now comes the new problem which need a person smart as you to decide the winner. The problem is as follows: They are playing on a rectangle paper, Alice and Bob take turn alternatively, for each turn, a people cut the rectangle vertically or horizontally, the result two rectangle after cut must be IDENTICAL, also the side must be integer, after the cut, one rectangle will be descarded. The first people fail to cut lose the game. Of course, Alice makes first as usual.

    Input

    First Line contains an integer t indicate there are t cases(1≤t≤1000) For each case: The input consists of two integers w and h(1≤w,h≤1,000,000,000), the size of rectangle.

    Output

    First output Case number For each case output Alice or Bob, indicate the winner.

    Sample Input

    2
    1 2
    2 2
    
    

    Sample Output

    Case 1: Alice
    Case 2: Bob
    


    上次比赛的题,比赛完了就没去看它了。近期几天发现oj上有题目了,就把这几道题又一次做了一下。这道题,上次比赛的时候看到这道题还以为是博弈的题,以为要用DP去做,所以题目都没怎么去看,就直接跳过了,后来看到a的人比較多,就细致看了一下题目。读懂题意之后,发现事实上非常easy的一道题。做的慢了。

    比赛时对于题目难易的分析还是不够;

    记录一下自己的思路,首先分析给的w,h是奇数还是偶数,假设两个都是奇数,说明就不能再分了,分到1也不能分了(1也是奇数),当有一个是偶数都还能够继续分,我用的递归,假设能分就一直分下去,直到不能分为止;
    以下是ac的代码;
    #include <iostream>
    #include <cstdio>
    using namespace std;
    int j;
    void compete(int w,int h)//递归
    {
        if(w%2==0) //这里还能够写成 (!

    w&1) { w/=2; j++; compete(w,h); } else if(h%2==0) { h/=2; j++; compete(w,h); } } int main() { int t,i; int w,h; scanf("%d",&t); for(i=1;i<=t;i++) { j=0; scanf("%d%d",&w,&h); compete(w,h); printf("Case %d: ",i); if(j%2==0) printf("Bob "); else printf("Alice "); } return 0; }



  • 相关阅读:
    一些性能查询的SQL 备忘
    informatica powercenter学习笔记(LookUp 使用)
    BIEE使用技巧
    Linux 系统中用户切换
    手动将自定制的WebPart部署到 SharePoint 2010 中
    C# Process运行cmd命令的异步回显
    Union和Union all的区别
    C#输入输出重定向
    c# 其他技术学习
    Oracle查看所有用户
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/5239962.html
Copyright © 2011-2022 走看看