結果
| 問題 |
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;
}