답안 #541524

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
541524 2022-03-23T17:55:42 Z AmirElarbi 최후의 만찬 (IOI12_supper) C++14
0 / 100
2500 ms 11312 KB
#include <bits/stdc++.h>
#define vi vector<int>
#define ve vector
#define ll long long
#define vf vector<float>
#define vll vector<pair<ll,ll>>
#define ii pair<int,int>
#define pll pair<ll,ll>
#define vvi vector<vi>
#define vii vector<ii>
#define gii greater<ii>
#define pb push_back
#define mp make_pair
#define fi first
#define se second
#define INF 2e9+5
#define eps 1e-7
#define eps1 1e-25
#define optimise ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
#define MAX_A 1e5+5
#define V 450
using namespace std;
const int MOD = 1e9;
const int nax = 1e5+5;
#include "advisor.h"

void ComputeAdvice(int *c, int n, int k, int m) {
  for (int i = 0; i < n; ++i)
  {
     for (int j = 0; j < 13; ++j)
     {
        if(c[i] & (int)(pow(2,j)) == (int)(pow(2,j))){
          WriteAdvice(1);
        }else {
          WriteAdvice(0);
        }
     }
  }
}
#include <bits/stdc++.h>
#define vi vector<int>
#define ve vector
#define ll long long
#define vf vector<float>
#define vll vector<pair<ll,ll>>
#define ii pair<int,int>
#define pll pair<ll,ll>
#define vvi vector<vi>
#define vii vector<ii>
#define gii greater<ii>
#define pb push_back
#define mp make_pair
#define fi first
#define se second
#define INF 2e9+5
#define eps 1e-7
#define eps1 1e-25
#define optimise ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
#define MAX_A 1e5+5
#define V 450
using namespace std;
const int MOD = 1e9;
const int nax = 5e3+5;
#include "assistant.h"
bool vis[nax];
void Assist(unsigned char *a, int n, int k, int r) {
   vi vals;
   int i;
   for (i = 0; i < n; i++) {
      int cur = 0;
      for (int j = 0; j < 13; ++j)
      {
         if(a[i*13 + j] == '1')
            cur += (int)(pow(2,j));
      }
      vals.pb(cur);
   }
   vi sch(n+1,0);
   for (int i = 0; i < k; ++i)
   {
      sch[i] = 1;
   }
   for (int i = 0; i < n; ++i)
   {
      int req = GetRequest();
      if(sch[req]) continue;
      int rem = 0;
      for (int j = 0; j < n; ++j)
      {
         if(sch[j]){
            rem = j; break;
         }
      }
      memset(vis,0,sizeof vis);
      for (int j = i+1; j < n; ++j)
      {
         if(!vis[vals[j]] && sch[vals[j]]){
            vis[vals[j]] = 1;
            rem = vals[j];
         }
      }
      sch[rem] = 0;
      sch[req] = 1;
      PutBack(rem);
   }
}

Compilation message

advisor.cpp: In function 'void ComputeAdvice(int*, int, int, int)':
advisor.cpp:32:35: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
   32 |         if(c[i] & (int)(pow(2,j)) == (int)(pow(2,j))){
      |                   ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 508 KB Output isn't correct - not an optimal way
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 98 ms 1672 KB Output isn't correct - not an optimal way
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 2578 ms 9068 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 516 KB Error - advice is too long
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 2525 ms 11244 KB Time limit exceeded
2 Execution timed out 2525 ms 11280 KB Time limit exceeded
3 Execution timed out 2520 ms 11192 KB Time limit exceeded
4 Execution timed out 2530 ms 11304 KB Time limit exceeded
5 Execution timed out 2509 ms 11236 KB Time limit exceeded
6 Execution timed out 2502 ms 11160 KB Time limit exceeded
7 Execution timed out 2532 ms 11208 KB Time limit exceeded
8 Execution timed out 2504 ms 11288 KB Time limit exceeded
9 Execution timed out 2506 ms 11268 KB Time limit exceeded
10 Execution timed out 2528 ms 11312 KB Time limit exceeded