結果
問題 | No.2828 Remainder Game |
ユーザー |
![]() |
提出日時 | 2024-08-08 20:28:05 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,374 bytes |
コンパイル時間 | 5,593 ms |
コンパイル使用メモリ | 251,456 KB |
最終ジャッジ日時 | 2025-02-23 21:09:27 |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 4 WA * 16 |
ソースコード
#include <bits/stdc++.h>#include <atcoder/all>using namespace std;using namespace atcoder;#define rep(i, n) for(int i=0;i<(n);++i)#define rep1(i, n) for(int i=1;i<=(n);i++)#define ll long longusing mint = modint998244353;using P = pair<ll,ll>;using lb = long double;using T = tuple<ll, ll, ll>;#ifdef LOCAL# include <debug_print.hpp># define dbg(...) debug_print::multi_print(#__VA_ARGS__, __VA_ARGS__)#else# define dbg(...) (static_cast<void>(0))#endifint main(){int n;cin >> n;auto ask = [&](vector<int> k) -> int {cout << 10000 << " " << k.size() << endl;for(int a : k) {cout << a << " ";}cout << endl;int c;cin >> c;return c;};vector<int> ans;auto func = [&](auto func, int s, int t, int cnt) -> void {if(cnt==0) return;dbg(s,t,cnt);if(t-s+1==cnt) {for(int i=s;i<=t;i++) ans.push_back(i);return;}if(s==t) return;vector<int> f, g;for(int i=s;i<=(s+t)/2;i++){f.push_back(i);}int a = ask(f);func(func, s, (t+s)/2, a);func(func, (t+s)/2+1, t, cnt-a);};func(func, 1, n, 5);cout << 0 << " " << 1 << endl;dbg(ans);cout << accumulate(ans.begin(),ans.end(), 0) << endl;return 0;}