Submission #27797091
Source Code Expand
(H,W,S),*A = $<.map{|ln| ln.split.map(&:to_i) }
I0,I1,J0,J1 = 4.times.map{ [nil]*257 }
A.each_with_index{|r,i|
r.each_with_index{|a,j|
I0[a] ||= i
I1[a] = i
J0[a] = j unless J0[a]&.<j
J1[a] = j unless J1[a]&.>j
}
}
Z = I0.compact.size
As = 257.times.select{|a|
I0[a] && (I1[a]-I0[a]+1)*(J1[a]-J0[a]+1)<=S
}.sort_by{|a| I0[a] }
Ai0,Aj1 = [I0,J1].map{|is| As.group_by{|a| is[a] } }
I0s,J1s = [Ai0,Aj1].map{|ai| ai.keys.sort }
I1s = I1.values_at(*As).uniq.sort
max = 0
while i0 = I0s.shift
I1s.shift while I1s[0]<i0
i1s = I1s.chunk{|i1| [S&1|S/(i1-i0+1),W].min }.map{|_,as| as[-1] }
while i1 = i1s.shift
w,ain,j1s = S/(i1-i0+1),[],J1s.dup
while j1 = j1s.shift
next if 1>Aj1[j1].count{|a|
ain << w+J0[a] if I1[a]<=i1
} or ain.size<=max
ain.reject!{|wj0| wj0<=j1 }
max = ain.size if max<ain.size
end
end
Ai0[i0].each{|a|
Aj1[J1[a]].shift
J1s.delete_at J1s.bsearch_index{|j1| J1[a]<=j1 } if Aj1[J1[a]].empty?
}
end
p Z-max
Submission Info
| Submission Time | |
|---|---|
| Task | F - デジタルアート (Digital Art) |
| User | ds14050 |
| Language | Ruby (2.7.1) |
| Score | 100 |
| Code Size | 1004 Byte |
| Status | AC |
| Exec Time | 935 ms |
| Memory | 35820 KiB |
Judge Result
| Set Name | Sample | Subtask1 | Subtask2 | Subtask3 | Subtask4 | Subtask5 | Subtask6 | Subtask7 | Subtask8 | Subtask9 | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 8 / 8 | 10 / 10 | 5 / 5 | 6 / 6 | 5 / 5 | 13 / 13 | 13 / 13 | 15 / 15 | 25 / 25 | ||||||||||||||||||||
| Status |
|
|
|
|
|
|
|
|
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt, sample-05.txt |
| Subtask1 | 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, sample-01.txt, 03-02.txt, 04-01.txt, 04-06.txt, 04-07.txt, 05-01.txt |
| Subtask2 | 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt, sample-05.txt, 03-01.txt, 03-02.txt, 03-03.txt, 04-01.txt, 04-02.txt, 04-03.txt, 04-04.txt, 04-05.txt, 04-06.txt, 04-07.txt, 05-01.txt, 05-02.txt |
| Subtask3 | 03-01.txt, 03-02.txt, 03-03.txt, 03-04.txt, 03-05.txt, 03-06.txt, 03-07.txt, 03-08.txt, 03-09.txt, 03-10.txt, 03-11.txt, sample-03.txt, 01-01.txt, 02-01.txt, 04-01.txt |
| Subtask4 | 04-01.txt, 04-02.txt, 04-03.txt, 04-04.txt, 04-05.txt, 04-06.txt, 04-07.txt, 04-08.txt, 04-09.txt, 04-10.txt, 04-11.txt, 04-12.txt, 04-13.txt, 04-14.txt, 04-15.txt, 04-16.txt, 04-17.txt, 04-18.txt, 01-01.txt |
| Subtask5 | 04-01.txt, 04-02.txt, 04-03.txt, 04-04.txt, 04-05.txt, 04-06.txt, 04-07.txt, 04-08.txt, 04-09.txt, 04-10.txt, 04-11.txt, 04-12.txt, 04-13.txt, 04-14.txt, 04-15.txt, 04-16.txt, 04-17.txt, 04-18.txt, 05-01.txt, 05-02.txt, 05-03.txt, 05-04.txt, 05-05.txt, 05-06.txt, 05-07.txt, sample-05.txt, 01-01.txt, 03-01.txt, 03-02.txt, 03-03.txt |
| Subtask6 | 04-01.txt, 04-02.txt, 04-03.txt, 04-04.txt, 04-05.txt, 04-06.txt, 04-07.txt, 04-08.txt, 04-09.txt, 04-10.txt, 04-11.txt, 04-12.txt, 04-13.txt, 04-14.txt, 04-15.txt, 04-16.txt, 04-17.txt, 04-18.txt, 05-01.txt, 05-02.txt, 05-03.txt, 05-04.txt, 05-05.txt, 05-06.txt, 05-07.txt, 06-01.txt, 06-02.txt, 06-03.txt, sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt, sample-05.txt, 01-01.txt, 03-01.txt, 03-02.txt, 03-03.txt |
| Subtask7 | 04-01.txt, 04-02.txt, 04-03.txt, 04-04.txt, 04-05.txt, 04-06.txt, 04-07.txt, 04-08.txt, 04-09.txt, 04-10.txt, 04-11.txt, 04-12.txt, 04-13.txt, 04-14.txt, 04-15.txt, 04-16.txt, 04-17.txt, 04-18.txt, 05-01.txt, 05-02.txt, 05-03.txt, 05-04.txt, 05-05.txt, 05-06.txt, 05-07.txt, 06-01.txt, 06-02.txt, 06-03.txt, 07-01.txt, 07-02.txt, 07-03.txt, 07-04.txt, 07-05.txt, 07-06.txt, 07-07.txt, 07-08.txt, 07-09.txt, 07-10.txt, sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt, sample-05.txt, 01-01.txt, 03-01.txt, 03-02.txt, 03-03.txt |
| Subtask8 | 04-01.txt, 04-02.txt, 04-03.txt, 04-04.txt, 04-05.txt, 04-06.txt, 04-07.txt, 04-08.txt, 04-09.txt, 04-10.txt, 04-11.txt, 04-12.txt, 04-13.txt, 04-14.txt, 04-15.txt, 04-16.txt, 04-17.txt, 04-18.txt, 05-01.txt, 05-02.txt, 05-03.txt, 05-04.txt, 05-05.txt, 05-06.txt, 05-07.txt, 06-01.txt, 06-02.txt, 06-03.txt, 07-01.txt, 07-02.txt, 07-03.txt, 07-04.txt, 07-05.txt, 07-06.txt, 07-07.txt, 07-08.txt, 07-09.txt, 07-10.txt, 08-01.txt, 08-02.txt, 08-03.txt, 08-04.txt, 08-05.txt, 08-06.txt, 08-07.txt, 08-08.txt, 08-09.txt, 08-10.txt, 08-11.txt, 08-12.txt, 08-13.txt, sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt, sample-05.txt, 01-01.txt, 03-01.txt, 03-02.txt, 03-03.txt |
| Subtask9 | 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 03-01.txt, 03-02.txt, 03-03.txt, 03-04.txt, 03-05.txt, 03-06.txt, 03-07.txt, 03-08.txt, 03-09.txt, 03-10.txt, 03-11.txt, 04-01.txt, 04-02.txt, 04-03.txt, 04-04.txt, 04-05.txt, 04-06.txt, 04-07.txt, 04-08.txt, 04-09.txt, 04-10.txt, 04-11.txt, 04-12.txt, 04-13.txt, 04-14.txt, 04-15.txt, 04-16.txt, 04-17.txt, 04-18.txt, 05-01.txt, 05-02.txt, 05-03.txt, 05-04.txt, 05-05.txt, 05-06.txt, 05-07.txt, 06-01.txt, 06-02.txt, 06-03.txt, 07-01.txt, 07-02.txt, 07-03.txt, 07-04.txt, 07-05.txt, 07-06.txt, 07-07.txt, 07-08.txt, 07-09.txt, 07-10.txt, 08-01.txt, 08-02.txt, 08-03.txt, 08-04.txt, 08-05.txt, 08-06.txt, 08-07.txt, 08-08.txt, 08-09.txt, 08-10.txt, 08-11.txt, 08-12.txt, 08-13.txt, 09-01.txt, 09-02.txt, 09-03.txt, 09-04.txt, 09-05.txt, 09-06.txt, 09-07.txt, 09-08.txt, 09-09.txt, 09-10.txt, 09-11.txt, 09-12.txt, 09-13.txt, 09-14.txt, sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt, sample-05.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 01-01.txt | AC | 57 ms | 13916 KiB |
| 01-02.txt | AC | 59 ms | 14008 KiB |
| 01-03.txt | AC | 60 ms | 14052 KiB |
| 01-04.txt | AC | 58 ms | 14208 KiB |
| 01-05.txt | AC | 59 ms | 14008 KiB |
| 01-06.txt | AC | 57 ms | 14160 KiB |
| 01-07.txt | AC | 55 ms | 14288 KiB |
| 02-01.txt | AC | 61 ms | 14252 KiB |
| 02-02.txt | AC | 61 ms | 14216 KiB |
| 02-03.txt | AC | 57 ms | 13988 KiB |
| 02-04.txt | AC | 64 ms | 14184 KiB |
| 02-05.txt | AC | 60 ms | 14124 KiB |
| 02-06.txt | AC | 58 ms | 14252 KiB |
| 02-07.txt | AC | 59 ms | 14148 KiB |
| 02-08.txt | AC | 57 ms | 14136 KiB |
| 03-01.txt | AC | 60 ms | 13968 KiB |
| 03-02.txt | AC | 56 ms | 14152 KiB |
| 03-03.txt | AC | 60 ms | 14160 KiB |
| 03-04.txt | AC | 250 ms | 20448 KiB |
| 03-05.txt | AC | 230 ms | 19712 KiB |
| 03-06.txt | AC | 222 ms | 19284 KiB |
| 03-07.txt | AC | 148 ms | 17096 KiB |
| 03-08.txt | AC | 319 ms | 23060 KiB |
| 03-09.txt | AC | 318 ms | 23956 KiB |
| 03-10.txt | AC | 312 ms | 23668 KiB |
| 03-11.txt | AC | 322 ms | 24936 KiB |
| 04-01.txt | AC | 61 ms | 14008 KiB |
| 04-02.txt | AC | 50 ms | 14264 KiB |
| 04-03.txt | AC | 59 ms | 14136 KiB |
| 04-04.txt | AC | 57 ms | 14160 KiB |
| 04-05.txt | AC | 56 ms | 14128 KiB |
| 04-06.txt | AC | 60 ms | 14256 KiB |
| 04-07.txt | AC | 59 ms | 14164 KiB |
| 04-08.txt | AC | 288 ms | 22176 KiB |
| 04-09.txt | AC | 265 ms | 22268 KiB |
| 04-10.txt | AC | 306 ms | 23792 KiB |
| 04-11.txt | AC | 273 ms | 22480 KiB |
| 04-12.txt | AC | 284 ms | 22060 KiB |
| 04-13.txt | AC | 313 ms | 23888 KiB |
| 04-14.txt | AC | 308 ms | 23660 KiB |
| 04-15.txt | AC | 304 ms | 23288 KiB |
| 04-16.txt | AC | 309 ms | 23052 KiB |
| 04-17.txt | AC | 306 ms | 23420 KiB |
| 04-18.txt | AC | 303 ms | 23804 KiB |
| 05-01.txt | AC | 61 ms | 14212 KiB |
| 05-02.txt | AC | 59 ms | 14124 KiB |
| 05-03.txt | AC | 280 ms | 21804 KiB |
| 05-04.txt | AC | 245 ms | 20960 KiB |
| 05-05.txt | AC | 301 ms | 23696 KiB |
| 05-06.txt | AC | 305 ms | 23676 KiB |
| 05-07.txt | AC | 312 ms | 23676 KiB |
| 06-01.txt | AC | 216 ms | 20260 KiB |
| 06-02.txt | AC | 286 ms | 22084 KiB |
| 06-03.txt | AC | 310 ms | 23492 KiB |
| 07-01.txt | AC | 279 ms | 22724 KiB |
| 07-02.txt | AC | 291 ms | 22312 KiB |
| 07-03.txt | AC | 312 ms | 23580 KiB |
| 07-04.txt | AC | 308 ms | 23676 KiB |
| 07-05.txt | AC | 310 ms | 23020 KiB |
| 07-06.txt | AC | 309 ms | 23768 KiB |
| 07-07.txt | AC | 318 ms | 22988 KiB |
| 07-08.txt | AC | 314 ms | 22684 KiB |
| 07-09.txt | AC | 308 ms | 23484 KiB |
| 07-10.txt | AC | 303 ms | 23704 KiB |
| 08-01.txt | AC | 304 ms | 22672 KiB |
| 08-02.txt | AC | 310 ms | 22604 KiB |
| 08-03.txt | AC | 314 ms | 23580 KiB |
| 08-04.txt | AC | 313 ms | 23944 KiB |
| 08-05.txt | AC | 308 ms | 22584 KiB |
| 08-06.txt | AC | 310 ms | 23664 KiB |
| 08-07.txt | AC | 316 ms | 23064 KiB |
| 08-08.txt | AC | 308 ms | 23552 KiB |
| 08-09.txt | AC | 310 ms | 22664 KiB |
| 08-10.txt | AC | 305 ms | 22784 KiB |
| 08-11.txt | AC | 297 ms | 22236 KiB |
| 08-12.txt | AC | 328 ms | 23720 KiB |
| 08-13.txt | AC | 330 ms | 23440 KiB |
| 09-01.txt | AC | 321 ms | 23672 KiB |
| 09-02.txt | AC | 309 ms | 22688 KiB |
| 09-03.txt | AC | 499 ms | 24312 KiB |
| 09-04.txt | AC | 614 ms | 25096 KiB |
| 09-05.txt | AC | 678 ms | 28932 KiB |
| 09-06.txt | AC | 435 ms | 32884 KiB |
| 09-07.txt | AC | 398 ms | 32836 KiB |
| 09-08.txt | AC | 315 ms | 23768 KiB |
| 09-09.txt | AC | 318 ms | 23820 KiB |
| 09-10.txt | AC | 315 ms | 23788 KiB |
| 09-11.txt | AC | 328 ms | 25316 KiB |
| 09-12.txt | AC | 331 ms | 25640 KiB |
| 09-13.txt | AC | 774 ms | 35820 KiB |
| 09-14.txt | AC | 935 ms | 28668 KiB |
| sample-01.txt | AC | 61 ms | 14044 KiB |
| sample-02.txt | AC | 55 ms | 14100 KiB |
| sample-03.txt | AC | 62 ms | 13912 KiB |
| sample-04.txt | AC | 64 ms | 14100 KiB |
| sample-05.txt | AC | 60 ms | 13968 KiB |