Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- int solve[1005][1005];
- void go(int n, int k) {
- if (solve[n][k] != -1) return;
- if (k > n) {
- solve[n][k] = 0;
- return ;
- }
- go(n - k, k);
- //s[n][k] = !s[n - k][k] || !s[n - k - 1][k + 1];
- if (n >= k + 1) go(n - k - 1, k + 1);
- if (solve[n - k][k] == 0) {
- solve[n][k] = 1;
- return ;
- }
- if ((n >= k + 1) && (solve[n - k - 1][k + 1] == 1)) {
- solve[n][k] = 1;
- return ;
- }
- solve[n][k] = 0;
- }
- int main() {
- //freopen("input.txt", "r", stdin);
- ios_base::sync_with_stdio(false);
- memset(solve, -1, sizeof solve);
- for (int i = 1; i <= 1000; i++) {
- go(i, 1);
- }
- vector < int > ans;
- for (int i = 1; i <= 50; i++) {
- cout << solve[i][1] << " " << i << endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement