답안 #99320

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
99320 2019-03-02T13:34:16 Z Mercenary 사육제 (CEOI14_carnival) C++14
0 / 100
2 ms 384 KB
#include<bits/stdc++.h>

using namespace std;
#define taskname "TEST"
#define pb	push_back
#define mp 	make_pair
template<typename TH> void _dbg(const char* sdbg, TH h) { cerr<<sdbg<<"="<<h<<"\n"; }
template<typename TH, typename... TA> void _dbg(const char* sdbg, TH h, TA... t) {
  while(*sdbg != ',')cerr<<*sdbg++; cerr<<"="<<h<<","; _dbg(sdbg+1, t...);
}

#ifdef LOCAL
#define debug(...) _dbg(#__VA_ARGS__, __VA_ARGS__)
#else
#define debug(...) (__VA_ARGS__)
#define cerr if(0)cout
#endif

typedef long double ld;
typedef long long ll;
typedef pair<int,int> ii;
const int maxn = 155;

int n , k;
int nTime = 0 , nPresent[maxn];
int res[maxn];
void ans(int color , int now)
{
    if(nPresent[color] == 0)nPresent[color] = now;
    res[now] = color;
}

int main()
{
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	if(fopen(taskname".INP","r"))
        freopen(taskname".INP", "r",stdin) ,
        freopen(taskname".OUT", "w",stdout);
    cin >> n >> k;
    for(int i = 1 ; i <= n ; ++i)
    {
        cout << i << " " << flush;
        for(int j = 1 ; j <= i ; ++j)cout << j << " " << flush;
        cout << endl;
        int now;cin >> now;
        if(now > nTime)
            ans(++nTime , i);
        else{
            int l = 1 , h = nTime;
            while(l <= h)
            {
                int mid = l + h >> 1;
                cout << mid + 1 << " " << flush;
                for(int j = 1 ; j <= mid ; ++j)cout << nPresent[j] << " " << flush;
                cout << i << " " << endl;
                cin >> now;
                if(now == mid)l = mid + 1;
                else h = mid - 1;
            }
            ans(l , i);
        }
    }
    cout << 0 << " ";
    for(int i = 1 ; i <= n ; ++i)cout << res[i] << " ";
    cout << flush;
}

Compilation message

carnival.cpp: In function 'void _dbg(const char*, TH, TA ...)':
carnival.cpp:9:3: warning: this 'while' clause does not guard... [-Wmisleading-indentation]
   while(*sdbg != ',')cerr<<*sdbg++; cerr<<"="<<h<<","; _dbg(sdbg+1, t...);
   ^~~~~
carnival.cpp:9:37: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'while'
   while(*sdbg != ',')cerr<<*sdbg++; cerr<<"="<<h<<","; _dbg(sdbg+1, t...);
                                     ^~~~
carnival.cpp: In function 'int main()':
carnival.cpp:53:29: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
                 int mid = l + h >> 1;
                           ~~^~~
carnival.cpp:38:44: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
         freopen(taskname".INP", "r",stdin) ,
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
         freopen(taskname".OUT", "w",stdout);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
carnival.cpp:38:44: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 2 ms 256 KB Time limit exceeded (wall clock)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 2 ms 384 KB Time limit exceeded (wall clock)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 2 ms 256 KB Time limit exceeded (wall clock)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 2 ms 256 KB Time limit exceeded (wall clock)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 2 ms 256 KB Time limit exceeded (wall clock)
2 Halted 0 ms 0 KB -