Advertisement
ivnikkk

Untitled

May 26th, 2022
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.22 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #define debug(l) cerr<<#l<<' '<<l<<'\n';
  3. #include "bits/stdc++.h"
  4. using namespace std;
  5. #define all(mask) mask.begin(), mask.end()
  6. typedef long long ll;
  7. typedef pair<ll, ll> pll;
  8. typedef pair<int, int> pii;
  9. typedef long double ld;
  10. signed main() {
  11. #ifdef _DEBUG
  12.     freopen("input.txt", "r", stdin);
  13.     freopen("output.txt", "w", stdout);
  14. #endif
  15.     ios_base::sync_with_stdio(false);
  16.     cin.tie(nullptr);
  17.     cout.tie(nullptr);
  18.     freopen("queen1.in", "r", stdin);
  19.     freopen("queen1.out", "w", stdout);
  20.     int n, m;
  21.     cin >> n >> m;
  22.     vector<vector<int>> a(n,vector<int> (m,-1));
  23.     for (int i = 0; i < n; i++) {
  24.         a[i][0] = 1;
  25.     }
  26.     for (int j = 0; j < m; j++) {
  27.         a[0][j] = 1;
  28.     }
  29.     int l = n - 1, r = m - 1;
  30.     while (r >= 0 && l >= 0) {
  31.         a[l--][r--] = 1;
  32.     }
  33.     a[n - 1][m - 1] = 0;
  34.     vector<int> d(n + m, 1), v(m, 1), g(n, 1);
  35.     d[n + m - 2] = 0, v[m - 1] = 0, g[n - 1] = 0;
  36.     for (int i = 0; i < n; i++) {
  37.         for (int j = m - 1; j >= 0; j--) {
  38.             if (a[i][j] != -1)continue;
  39.             if (d[i + j] == 1 && v[j] == 1 && g[i] == 1) {
  40.                 d[i + j] = 0, v[j] = 0, g[i] = 0;
  41.                 a[i][j] = 0;
  42.             }
  43.             else {
  44.                 a[i][j] = 1;
  45.             }
  46.         }
  47.     }
  48.     if (a[n - 1][0] == 1) {
  49.         cout << 1;
  50.     }
  51.     else {
  52.         cout << 2;
  53.     }
  54.    
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement