Submission #41831844
Source Code Expand
# debug = true debug = false A_TIME, SHIFT_A_TIME, CAPS_LOCK_TIME = gets.split.map(&:to_i) INPUT_BYTES = gets.chomp.bytes SMALL_BYTE, LARGE_BYTE = 'aA'.bytes dp = Array.new(2) { [] } dp[0] << 0 dp[1] << CAPS_LOCK_TIME INPUT_BYTES.each_with_index do |byte, i| if byte == SMALL_BYTE dp[0][i + 1] = dp[0][i] + A_TIME dp[1][i + 1] = dp[1][i] + SHIFT_A_TIME else dp[0][i + 1] = dp[0][i] + SHIFT_A_TIME dp[1][i + 1] = dp[1][i] + A_TIME end dp[0][i + 1] = [dp[0][i + 1], dp[1][i + 1] + CAPS_LOCK_TIME].min dp[1][i + 1] = [dp[1][i + 1], dp[0][i + 1] + CAPS_LOCK_TIME].min end p dp if debug puts [dp[0][-1], dp[1][-1]].min
Submission Info
Submission Time | |
---|---|
Task | D - Shift vs. CapsLock |
User | HalMat |
Language | Ruby (2.7.1) |
Score | 400 |
Code Size | 665 Byte |
Status | AC |
Exec Time | 150 ms |
Memory | 21808 KiB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 400 / 400 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_small_00.txt, 01_small_01.txt, 01_small_02.txt, 01_small_03.txt, 01_small_04.txt, 01_small_05.txt, 01_small_06.txt, 01_small_07.txt, 01_small_08.txt, 01_small_09.txt, 02_rnd_00.txt, 02_rnd_01.txt, 02_rnd_02.txt, 02_rnd_03.txt, 02_rnd_04.txt, 02_rnd_05.txt, 02_rnd_06.txt, 02_rnd_07.txt, 02_rnd_08.txt, 02_rnd_09.txt, 03_max_00.txt, 03_max_01.txt, 03_max_02.txt, 03_max_03.txt, 04_border_00.txt, 04_border_01.txt, 04_border_02.txt, 04_border_03.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_sample_00.txt | AC | 56 ms | 14152 KiB |
00_sample_01.txt | AC | 59 ms | 13908 KiB |
00_sample_02.txt | AC | 55 ms | 14040 KiB |
01_small_00.txt | AC | 56 ms | 14064 KiB |
01_small_01.txt | AC | 55 ms | 14012 KiB |
01_small_02.txt | AC | 56 ms | 13980 KiB |
01_small_03.txt | AC | 58 ms | 14016 KiB |
01_small_04.txt | AC | 57 ms | 14000 KiB |
01_small_05.txt | AC | 55 ms | 14064 KiB |
01_small_06.txt | AC | 55 ms | 14040 KiB |
01_small_07.txt | AC | 57 ms | 14044 KiB |
01_small_08.txt | AC | 55 ms | 14016 KiB |
01_small_09.txt | AC | 61 ms | 13988 KiB |
02_rnd_00.txt | AC | 144 ms | 21628 KiB |
02_rnd_01.txt | AC | 135 ms | 20832 KiB |
02_rnd_02.txt | AC | 136 ms | 20684 KiB |
02_rnd_03.txt | AC | 118 ms | 19432 KiB |
02_rnd_04.txt | AC | 121 ms | 19580 KiB |
02_rnd_05.txt | AC | 116 ms | 18948 KiB |
02_rnd_06.txt | AC | 123 ms | 19996 KiB |
02_rnd_07.txt | AC | 105 ms | 18496 KiB |
02_rnd_08.txt | AC | 130 ms | 20684 KiB |
02_rnd_09.txt | AC | 104 ms | 18272 KiB |
03_max_00.txt | AC | 150 ms | 21780 KiB |
03_max_01.txt | AC | 146 ms | 21736 KiB |
03_max_02.txt | AC | 146 ms | 21688 KiB |
03_max_03.txt | AC | 147 ms | 21808 KiB |
04_border_00.txt | AC | 148 ms | 21804 KiB |
04_border_01.txt | AC | 145 ms | 21736 KiB |
04_border_02.txt | AC | 147 ms | 21684 KiB |
04_border_03.txt | AC | 143 ms | 21668 KiB |