結果
問題 | No.2247 01 ZigZag |
ユーザー |
|
提出日時 | 2023-03-17 21:51:38 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 2,432 bytes |
コンパイル時間 | 1,574 ms |
コンパイル使用メモリ | 166,920 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-18 10:42:06 |
合計ジャッジ時間 | 3,015 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 22 WA * 28 |
ソースコード
#line 2 "/home/penguin8331/vscode/library/template/template.hpp" #include <bits/stdc++.h> #line 3 "/home/penguin8331/vscode/library/template/macro.hpp" #define pb push_back #define mp make_pair #define all(x) (x).begin(), (x).end() #define rall(x) (x).rbegin(), (x).rend() #define elif else if #define updiv(N, X) (((N) + (X) - (1)) / (X)) #define sigma(a, b) ((a + b) * (b - a + 1) / 2) #line 3 "/home/penguin8331/vscode/library/template/alias.hpp" using ll = long long; using ld = long double; using pii = std::pair<int, int>; using pll = std::pair<ll, ll>; constexpr int inf = 1 << 30; constexpr ll INF = 1LL << 60; constexpr int dx[] = {1, 0, -1, 0, 1, -1, 1, -1}; constexpr int dy[] = {0, 1, 0, -1, 1, 1, -1, -1}; constexpr int mod = 998244353; constexpr int MOD = 1e9 + 7; #line 3 "/home/penguin8331/vscode/library/template/func.hpp" template <typename T> inline bool chmax(T& a, T b) { return ((a < b) ? (a = b, true) : (false)); } template <typename T> inline bool chmin(T& a, T b) { return ((a > b) ? (a = b, true) : (false)); } #line 3 "/home/penguin8331/vscode/library/template/util.hpp" struct IOSetup { IOSetup() { std::cin.tie(nullptr); std::ios::sync_with_stdio(false); std::cout.tie(0); std::cout << std::fixed << std::setprecision(12); std::cerr << std::fixed << std::setprecision(12); } } IOSetup; #line 1 "/home/penguin8331/vscode/library/template/debug.hpp" #ifdef LOCAL #include <algo/debug.hpp> #else #define debug(...) #endif #line 8 "/home/penguin8331/vscode/library/template/template.hpp" using namespace std; #line 2 "A.cpp" int main() { int N, M, K; cin >> N >> M >> K; // 00000 0 1 0 1 0 1 0 1 111111 if (min(min(N, M) * 2, N + M - 1) < K) { cout << -1 << endl; return 0; } if((N==0||M==0)&&K>0){ cout<<-1<<endl; return 0; } int fzero = 0, lone = 0; while (true) { if (min(min(N - 1, M) * 2, N + M - 2) < K) { break; } N--; fzero++; } while (true) { if (min(min(N, M - 1) * 2, N + M - 2) < K) { break; } M--; lone++; } debug(fzero,lone,N,M); if(N!=M){ cout<<-1<<endl; } for(int i=0;i<fzero;i++){ debug(i); cout<<0; } for(int i=0;i<N;i++){ cout<<"01"; } for(int i=0;i<lone;i++){ cout<<1; } cout<<endl; }