Submission #1168326

#TimeUsernameProblemLanguageResultExecution timeMemory
1168326KaleemRazaSyed새로운 문제 (POI13_spa)C++20
Compilation error
0 ms0 KiB
#include<bits/stdc++.h>

using namespace std;

#define int long long

int read()
{
  string s;
  cin >> s;
  int res = 0;
  for(char c : s)
    res <<= 1, res += c - '0';
  return res;
}

signed main()
{
  int n, k;
  cin >> n >> k;
  int x = read(), y = read();
  int a[k];
  for(int i = 0; i < k; i ++)
    a[i] = read();

  sort(a, a + k);

  queue<int> Q1, Q2;
  bool poss = (x == y);

  set<int> seen1, seen2;
  
  Q1.push(x);
  Q2.push(y);

  while(Q1.size() && Q2.size() && !poss)
    {
      int u = Q1.front();
      Q1.pop();
      for(int i = 0; i < n; i ++)
	{
	  int v = u ^ (1LL << i);
	  if(binary_search(a, a + k, v)) continue;
	  if(seen2.count(v))
	    poss = true;
	  else if(!seen1.count(v))
	    seen1.insert(v), Q1.push(v);
	}

      u = Q2.front();
      Q2.pop();
      for(int i = 0; i < n; i ++)
	{	
	  int v = u ^ (1LL << i);
	  if(binary_search(a, a + k, v)) continue;
	  if(seen1.count(v))
	    poss = true;
	  else if(!seen2.count(v))
	    seen2.insert(v), Q2.push(v);
	}
    }
  
  cout << (poss ? "TAK" : "NIE") << endl;
  return 0;
}
#include<bits/stdc++.h>

using namespace std;

#define int long long

int read()
{
  string s;
  cin >> s;
  int res = 0;
  for(char c : s)
    res <<= 1, res += c - '0';
  return res;
}

signed main()
{
  ios::sync_with_stdio(false);
  cin.tie(0), cout.tie(0);
  
  int n, k;
  cin >> n >> k;
  int x = read(), y = read();
  int a[k];
  for(int i = 0; i < k; i ++)
    a[i] = read();

  bool poss = true;

  int C[n + 1][n + 1];
  for(int i = 1; i <= n; i ++)
    {
      C[i][i] = C[i][0] = 1;
      for(int j = 1; j < i; j++)
	C[i][j] = C[i - 1][j] + C[i - 1][j - 1];
    }

  int cnt[n + 1] = {};
  for(int i = 0; i < k; i ++)
    cnt[__builtin_popcountll(x ^ a[i])]++;
  int mx = __builtin_popcountll(x ^ y);
  for(int i = 0; i < mx; i ++)
    if(cnt[i] == C[n][i])
      poss = false;
  
  cout << (poss ? "TAK" : "NIE") << endl;
  return 0;
}

Compilation message (stderr)

spa.cpp:72:5: error: redefinition of 'long long int read()'
   72 | int read()
      |     ^~~~
spa.cpp:7:5: note: 'long long int read()' previously defined here
    7 | int read()
      |     ^~~~
spa.cpp:82:8: error: redefinition of 'int main()'
   82 | signed main()
      |        ^~~~
spa.cpp:17:8: note: 'int main()' previously defined here
   17 | signed main()
      |        ^~~~