問題一覧 > 通常問題

No.2608 Divide into two

レベル : / 実行時間制限 : 1ケース 1.000秒 / メモリ制限 : 512 MB / スペシャルジャッジ問題 (複数の解が存在する可能性があります)
タグ : / 解いたユーザー数 158
作問者 : 蜜蜂 / テスター : Mitarushi
1 ProblemId : 8449 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2024-01-09 15:53:03

問題文

11 から NN までの数を総和が等しくなるように 22 つに分けてください。

正整数 NN が与えられます。 11 から NN までの NN 個の数に 11 つずつ青または赤の色を塗ることを考えます。
青で塗った数の合計と赤で塗った数の合計が等しくなるような塗り方が存在するか判定し、存在する場合はその一例を示してください。

TT 個のテストケースが与えられるのでそれぞれについて答えを求めてください。

入力

入力の 11 行目は以下の通りです。
TT
そして、 TT 個のテストケースが続きます。これらはそれぞれ以下の形式で与えられます。
NN

  • 1T1001 \leq T \leq 100
  • 1N1001 \leq N \leq 100
  • 入力は全て整数

出力

条件を満たす塗り方が存在しない場合 -1 を出力して改行してください。
存在する場合、 01 からなる NN 文字の文字列を出力して改行してください。ここで、左から ii 文字目が 0 のとき ii を青で塗ったことを、 1 のとき ii を赤で塗ったことを表します。

サンプル

サンプル1
入力
3
1
3
8
出力
-1
110
00100011

  • 11 つめのテストケースについて、条件を満たす塗り方は存在しません。
  • 22 つめのテストケースについて、青色で塗った数の合計は 33 であり赤色で塗った数の合計は 3=1+23 = 1+2 です。
  • 33 つめのテストケースについて、青色で塗った数の合計は 18=1+2+4+5+618 = 1+2+4+5+6 であり赤色で塗った数の合計は 18=3+7+818 = 3+7+8 です。

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。