Submission #73394290
Source Code Expand
n,m = gets.split.map(&:to_i)
s,t = gets.split.map(&:to_i)
if m != 0
p = gets.split.map(&:to_i)
else
p = []
end
p.unshift(s)
p << t
m += 2
dist = Array.new(m){Array.new(m,-1)}
m.times do |i|
m.times do |j|
next if i == j
ir = (p[i]-1)/n
ic = (p[i]-1)%n
jr = (p[j]-1)/n
jc = (p[j]-1)%n
dist[i][j] = (ir-jr).abs + (ic-jc).abs
end
end
bit = 1<<m
dp = Array.new(bit){Array.new(m,10**18)}
#初期化
dp[1][0] = 0
i = 0
while i < bit
zumi,mada = m.times.partition{|v| i[v] == 1}
zumi.each do |j|
gj = dist[j]
dpij = dp[i][j]
mada.each do |k|
x = dpij + gj[k]
y = i|(1<<k)
dp[y][k] = x if dp[y][k] > x
end
end
i += 1
end
puts dp[bit-1][m-1]
Submission Info
| Submission Time | |
|---|---|
| Task | E - Warehouse Robot Delivery |
| User | konayuki |
| Language | Ruby 3.4 (ruby 3.4.5) |
| Score | 433 |
| Code Size | 749 Byte |
| Status | AC |
| Exec Time | 523 ms |
| Memory | 65808 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 433 / 433 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample01.txt, sample02.txt, sample03.txt |
| All | sample01.txt, sample02.txt, sample03.txt, in01.txt, in02.txt, in03.txt, in04.txt, in05.txt, in06.txt, in07.txt, in08.txt, in09.txt, in10.txt, in11.txt, in12.txt, in13.txt, in14.txt, in15.txt, in16.txt, in17.txt, in18.txt, in19.txt, in20.txt, in21.txt, in22.txt, in23.txt, in24.txt, in25.txt, in26.txt, in27.txt, in28.txt, in29.txt, in30.txt, in31.txt, in32.txt, in33.txt, in34.txt, in35.txt, in36.txt, in37.txt, in38.txt, in39.txt, in40.txt, in41.txt, in42.txt, in43.txt, in44.txt, in45.txt, in46.txt, in47.txt, in48.txt, in49.txt, in50.txt, in51.txt, in52.txt, in53.txt, in54.txt, in55.txt, in56.txt, in57.txt, in58.txt, in59.txt, in60.txt, in61.txt, in62.txt, in63.txt, in64.txt, in65.txt, in66.txt, in67.txt, in68.txt, in69.txt, in70.txt, in71.txt, in72.txt, in73.txt, in74.txt, in75.txt, in76.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| in01.txt | AC | 37 ms | 15288 KiB |
| in02.txt | AC | 36 ms | 15240 KiB |
| in03.txt | AC | 490 ms | 65668 KiB |
| in04.txt | AC | 37 ms | 15396 KiB |
| in05.txt | AC | 37 ms | 15308 KiB |
| in06.txt | AC | 49 ms | 19224 KiB |
| in07.txt | AC | 39 ms | 15656 KiB |
| in08.txt | AC | 502 ms | 65396 KiB |
| in09.txt | AC | 43 ms | 16444 KiB |
| in10.txt | AC | 91 ms | 20432 KiB |
| in11.txt | AC | 499 ms | 65320 KiB |
| in12.txt | AC | 500 ms | 65476 KiB |
| in13.txt | AC | 506 ms | 65448 KiB |
| in14.txt | AC | 519 ms | 65448 KiB |
| in15.txt | AC | 37 ms | 15228 KiB |
| in16.txt | AC | 496 ms | 65504 KiB |
| in17.txt | AC | 515 ms | 65364 KiB |
| in18.txt | AC | 514 ms | 65392 KiB |
| in19.txt | AC | 497 ms | 65484 KiB |
| in20.txt | AC | 490 ms | 65216 KiB |
| in21.txt | AC | 503 ms | 65436 KiB |
| in22.txt | AC | 508 ms | 65564 KiB |
| in23.txt | AC | 511 ms | 65440 KiB |
| in24.txt | AC | 495 ms | 65408 KiB |
| in25.txt | AC | 495 ms | 65432 KiB |
| in26.txt | AC | 523 ms | 65364 KiB |
| in27.txt | AC | 40 ms | 15776 KiB |
| in28.txt | AC | 42 ms | 16568 KiB |
| in29.txt | AC | 37 ms | 15388 KiB |
| in30.txt | AC | 36 ms | 15204 KiB |
| in31.txt | AC | 501 ms | 65512 KiB |
| in32.txt | AC | 512 ms | 65448 KiB |
| in33.txt | AC | 39 ms | 15820 KiB |
| in34.txt | AC | 38 ms | 15848 KiB |
| in35.txt | AC | 37 ms | 15160 KiB |
| in36.txt | AC | 36 ms | 15160 KiB |
| in37.txt | AC | 39 ms | 15744 KiB |
| in38.txt | AC | 41 ms | 15940 KiB |
| in39.txt | AC | 40 ms | 15868 KiB |
| in40.txt | AC | 50 ms | 19244 KiB |
| in41.txt | AC | 40 ms | 15828 KiB |
| in42.txt | AC | 39 ms | 15828 KiB |
| in43.txt | AC | 512 ms | 65532 KiB |
| in44.txt | AC | 513 ms | 65808 KiB |
| in45.txt | AC | 516 ms | 65536 KiB |
| in46.txt | AC | 494 ms | 65664 KiB |
| in47.txt | AC | 513 ms | 65492 KiB |
| in48.txt | AC | 491 ms | 65344 KiB |
| in49.txt | AC | 497 ms | 65492 KiB |
| in50.txt | AC | 511 ms | 65552 KiB |
| in51.txt | AC | 508 ms | 65432 KiB |
| in52.txt | AC | 495 ms | 65440 KiB |
| in53.txt | AC | 496 ms | 65500 KiB |
| in54.txt | AC | 518 ms | 65484 KiB |
| in55.txt | AC | 50 ms | 19344 KiB |
| in56.txt | AC | 497 ms | 65396 KiB |
| in57.txt | AC | 37 ms | 15348 KiB |
| in58.txt | AC | 37 ms | 15308 KiB |
| in59.txt | AC | 37 ms | 15356 KiB |
| in60.txt | AC | 37 ms | 15388 KiB |
| in61.txt | AC | 36 ms | 15172 KiB |
| in62.txt | AC | 36 ms | 15388 KiB |
| in63.txt | AC | 38 ms | 15616 KiB |
| in64.txt | AC | 38 ms | 15740 KiB |
| in65.txt | AC | 38 ms | 15696 KiB |
| in66.txt | AC | 38 ms | 15680 KiB |
| in67.txt | AC | 36 ms | 15240 KiB |
| in68.txt | AC | 36 ms | 15356 KiB |
| in69.txt | AC | 506 ms | 65448 KiB |
| in70.txt | AC | 503 ms | 65552 KiB |
| in71.txt | AC | 39 ms | 15548 KiB |
| in72.txt | AC | 38 ms | 15616 KiB |
| in73.txt | AC | 36 ms | 15308 KiB |
| in74.txt | AC | 36 ms | 15396 KiB |
| in75.txt | AC | 501 ms | 65768 KiB |
| in76.txt | AC | 512 ms | 65280 KiB |
| sample01.txt | AC | 39 ms | 15604 KiB |
| sample02.txt | AC | 37 ms | 15348 KiB |
| sample03.txt | AC | 40 ms | 15888 KiB |