Poj3537 Crosses and Crosses ---- sg

Source: Internet
Author: User

Crosses and Crosses
Time Limit: 3000 MS Memory Limit: 65536 K
Total Submissions: 1866 Accepted: 687
Case Time Limit: 2000 MS
Description
The game of Crosses and Crosses is played on the field of 1 × n cells. two players make moves in turn. each move the player selects any free cell on the field and puts a cross '×' to it. if after the player's move there are three crosses in a row, he wins.
You are given n. Find out who wins if both players play optimally.
Input
Input file contains one integer number n (3 ≤ n ≤2000 ).
Output
Output '1' if the first player wins, or '2' if the second player does.
Sample Input
#1 3
#2 6
Sample Output
#1 1
#2 2
Source
Northeastern Europe 2007, Northern Subregion
 
Place an X in the first position, which can be divided into two sub-games, I-3 and n-I-2.
 
[Cpp]
# Include <iostream>
# Include <cstdlib>
# Include <stdio. h>
# Include <memory. h>
Using namespace std;
Int sg [2100];
Int dfs (int n)
{
If (n <0) return 0; // n <0
If (sg [n]> = 0) return sg [n];
Bool g [2001] = {0 };
For (int I = 1; I <= n; I ++)
{
Int t = dfs (I-3) ^ dfs (n-i-2 );
G [t] = 1;
}
For (int I = 0; I ++)
If (g [I] = 0) return sg [n] = I;
}
Int main ()
{
Memset (sg,-1, sizeof (sg ));
Int n;
While (scanf ("% d", & n )! = EOF)
{
If (dfs (n) puts ("1 ");
Else puts ("2 ");
}
}

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.