問題一覧 > ネタ問題

No.8126 Brainfxxk easy

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 1024 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 66
作問者 : UT0911 / テスター : Cafe1942
ProblemId : 13220 / yukicoder April Fool Contest 2026 (順位表) / 自分の提出
問題文最終更新日: 2026-03-31 23:06:21
yukicoder April Fool Contest 2026の他の問題:

問題文

難解プログラミング言語の $1$ つにBrainfxxk(xx=uc)という言語があります。この言語は+-><.,[]の $8$ 種類の命令からできています。

ゆーてぃーさんは、 $8$ 種類の命令のうち、+-><の $4$ 種類の命令を再現することにしました。
それぞれの命令の内容は以下の通りです。

  • + : ポインタの番号のデータの値を $1$ 加算する(ポインタが指すデータの値を $1$ 加算する)
  • - : ポインタの番号のデータの値を $1$ 減算する(ポインタが指すデータの値を $1$ 減算する)
  • > : ポインタの番号を $1$ 加算する(ポインタを前に $1$ つ移動する)
  • < : ポインタの番号を $1$ 減算する(ポインタを後ろに $1$ つ移動する)

データとデータの値は以下のように定めます。
  • $N$ 個のデータが $1$ 列に置かれていて、それぞれのデータは先頭から $1$ 番, $2$ 番,$ \cdots$, $N$ 番となっている。
  • 各データの値は最初 $0$ で初期化されている。
  • ポインタの番号は最初、 $1$ である。

データの数とコードの文字列が与えられるので、コードを実行した後の各データの値を出力してください。
ただし実行途中にポインタが、存在しないデータの番号に $1$ 度でもなった場合はerrorと出力してください。

制約

  • $1 \leq N \leq 10 $
  • $1 \leq |S|\leq 100$
  • 文字列 $S$ は+-><からなる。

入力

$N$ 
$S$

$1$ 行目にはデータの数を表す$N$が与えられる。
$2$ 行目にはコードの文字列である$S$が与えられる。

出力

ポインタが、存在しないデータの番号に $1$ 度でもなった場合はerrorと出力してください。
そうでない場合、各データの値を空白区切りで $1$ 行で出力してください。
最後に改行をして下さい。

サンプル

サンプル1
入力
3
+++>--
出力
3 -2 0

ポインタが指している $1$ 番目のデータに $3$ 回加算し、ポインタが $1$ つ後ろに移動し、 ポインタが指している2番目のデータに $2$ 回減算します。

サンプル2
入力
3
<>>>>
出力
error

ポインタが $1$ つ前に移動し、存在しないデータを指しているためerrorを出力します。 $1$ 文字目のerrorを無視してもその後にポインタが $4$ つ後ろに移動し、存在しないデータを指しています。

サンプル3
入力
1
+-+-+-+-+-
出力
0

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