Submission #54465309
Source Code Expand
Copy
改行に当たるまで、桁数を数えながら最大4桁読み込む>+++++>,----------[<->>,----------[<<->>>,----------[<<<->>>>,----------[<<<<->>>>>,[-]]]]]余った桁の分右にシフトし、左端に0に相当するデータを入れる<[<]>-[>>>[>+<-]<[>+<-]<[>+<-]++++++++++++++++++++++++++++++++++++++<-]移動しながら数字を数値に変換する
改行に当たるまで、桁数を数えながら最大4桁読み込む
>+++++
>,----------[
<->>,----------[
<<->>>,----------[
<<<->>>>,----------[
<<<<->>>>>,[-]
]
]
]
]
余った桁の分右にシフトし、左端に0に相当するデータを入れる
<[<]
>-[
>>>[>+<-]
<[>+<-]
<[>+<-]
++++++++++++++++++++++++++++++++++++++
<-
]
移動しながら数字を数値に変換する
>--------------------------------------
>--------------------------------------
>--------------------------------------
>--------------------------------------
>
空白に当たるまで、桁数を数えながら最大4桁読み込む
>+++++
>,--------------------------------[
<->>,--------------------------------[
<<->>>,--------------------------------[
<<<->>>>,--------------------------------[
<<<<->>>>>,[-]
]
]
]
]
余った桁の分右にシフトし、左端に0に相当するデータを入れる
<[<]
>-[
>>>[>+<-]
<[>+<-]
<[>+<-]
++++++++++++++++
<-
]
移動しながら数字を数値に変換する
>----------------
>----------------
>----------------
>----------------
>
改行に当たるまで、桁数を数えながら最大4桁読み込む
>+++++
>,----------[
<->>,----------[
<<->>>,----------[
<<<->>>>,----------[
<<<<->>>>>,[-]
]
]
]
]
余った桁の分右にシフトし、左端に0に相当するデータを入れる
<[<]
>-[
>>>[>+<-]
<[>+<-]
<[>+<-]
++++++++++++++++++++++++++++++++++++++
<-
]
移動しながら数字を数値に変換する
>--------------------------------------
>--------------------------------------
>--------------------------------------
>--------------------------------------
3番目の値を2番目の値に加算する
[-<<<<<<+>>>>>>]
<[-<<<<<<+>>>>>>]
<[-<<<<<<+>>>>>>]
<[-<<<<<<+>>>>>>]
3番目の値と2番目の値の和を1番目の値に加算する
<<<
[-<<<<<<+>>>>>>]
<[-<<<<<<+>>>>>>]
<[-<<<<<<+>>>>>>]
<[-<<<<<<+>>>>>>]
一の位から十の位の繰り上がり処理を行う
<<+<[
>>>>+++++++++[
<<<<[->+>]
>[>]<[>]
>>-
]
<<<<[<+>->--------->]
>[>]<[>]<<
]
>[-<+>]
十の位から百の位の繰り上がり処理を行う
+<<[
>>>>>+++++++++[
<<<<<[->>+>]
>[>]<[>]
>>-
]
<<<<<[<+>->>--------->]
>[>]<[>]<<<
]
>>[-<<+>>]
百の位から千の位の繰り上がり処理を行う
+<<<[
>>>>>>+++++++++[
<<<<<<[->>>+>]
>[>]<[>]
>>-
]
<<<<<<[<+>->>>--------->]
>[>]<[>]<<<<
]
>>>[-<<<+>>>]
出力する範囲を決定する
ついでに、百の位、十の位、一の位に1が足されているのを打ち消す
>+>+>+>+>>>>>+<<<<<<<<<<<<<
[>>>>>>>>>>+>+>+<<<<<<<<]>>>>[<]
<<<-[>>>>>>>>>>+>+<<<<<<<<]>>>[<]
<<-[>>>>>>>>>>+<<<<<<<<]>>[<]
<-
決定した範囲に従って出力する
>>>>>>>>>>[<]>
[<<<<<<<<<<++++++++++++++++++++++++++++++++++++++++++++++++.>>>>>>>>>>>]
=====足し算パート終了!あとは文字列パート=====
空白を出力する
++++++++++++++++++++++++++++++++.
読み込んだ文字を出力する
改行を読み込んだら終了する
[,.----------]
Submission Info
| Submission Time | |
|---|---|
| Task | PracticeA - Welcome to AtCoder |
| User | mikecat |
| Language | Brainfuck (bf 20041219) |
| Score | 100 |
| Code Size | 3302 Byte |
| Status | AC |
| Exec Time | 7 ms |
| Memory | 2472 KB |
Judge Result
| Set Name | All | ||
|---|---|---|---|
| Score / Max Score | 100 / 100 | ||
| Status |
|
| Set Name | Test Cases |
|---|---|
| All | 00_rnd_01.txt, 00_rnd_02.txt, 00_rnd_03.txt, 00_rnd_04.txt, 00_rnd_05.txt, 00_sample_1.txt, 00_sample_2.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_rnd_01.txt | AC | 7 ms | 2472 KB |
| 00_rnd_02.txt | AC | 1 ms | 2304 KB |
| 00_rnd_03.txt | AC | 1 ms | 2236 KB |
| 00_rnd_04.txt | AC | 1 ms | 2348 KB |
| 00_rnd_05.txt | AC | 1 ms | 2236 KB |
| 00_sample_1.txt | AC | 1 ms | 2340 KB |
| 00_sample_2.txt | AC | 1 ms | 2280 KB |