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 |