結果

問題 No.2247 01 ZigZag
ユーザー みここみここ
提出日時 2023-03-17 22:49:08
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 1,671 bytes
コンパイル時間 495 ms
コンパイル使用メモリ 67,216 KB
最終ジャッジ日時 2025-02-11 13:58:04
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 48 WA * 2
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <iostream>
using namespace std;

int main()
{
    int n, m, k;
    cin >> n >> m >> k;
    if (k == 0)
    {
        if (n == 0)
        {
            for (int i = 0; i < n; i++)
            {
                cout << 1;
            }
        }
        else if (m == 0)
        {
            for (int i = 0; i < n; i++)
            {
                cout << 0;
            }
        }
        else
        {
            cout << -1 << endl;
            return 0;
        }
    }
    else if (k % 2)
    {
        if (k > min(n, m) * 2)
        {
            cout << -1 << endl;
            return 0;
        }
        for (int i = 0; i < n - k / 2 - 1; i++)
        {
            cout << 0;
        }
        for (int i = 0; i < k; i++)
        {
            cout << i % 2;
        }
        for (int i = 0; i < m - k / 2; i++)
        {
            cout << 1;
        }
    }
    else
    {
        if (k > min(n, m) * 2 || k == n * 2 && k == m * 2)
        {
            cout << -1 << endl;
            return 0;
        }
        if (k == n * 2)
        {
            for (int i = 1; i <= k; i++)
            {
                cout << i % 2;
            }
            for (int i = 0; i < m - k / 2; i++)
            {
                cout << 1;
            }
        }
        else
        {
            for (int i = 0; i < n - k / 2; i++)
            {
                cout << 0;
            }
            for (int i = 1; i <= k - 1; i++)
            {
                cout << i % 2;
            }
            for (int i = 0; i < m - k / 2; i++)
            {
                cout << 1;
            }
            cout << 0;
        }
    }
    cout << endl;
}
0