Submission #27909751


Source Code Expand

Copy
(H,W),*A = $<.map{|ln| ln.split.map(&:to_i) }
I = lambda{|as,s|
t,i,*is = s,0
as.each_with_index{|a,j|
is << (i...i = j) and t = s if t<=0
t -= a
}
next is << (i...as.size)
}
B = A.map(&:sum)
S = B.sum
p (1..H).sum{|d|
s = S/d
next 0 if s*d != S
is = I[B,s]
next 0 if is.size != d || B[is[-1]].sum != s
c = is.map{|is| A[is].transpose.map(&:sum) }
next (1..W).sum{|d|
t = s/d
next 0 if t*d != s
js = I[c[0],t]
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
(H,W),*A = $<.map{|ln| ln.split.map(&:to_i) }
I = lambda{|as,s|
	t,i,*is = s,0
	as.each_with_index{|a,j|
		is << (i...i = j) and t = s if t<=0
		t -= a
	}
	next is << (i...as.size)
}
B = A.map(&:sum)
S = B.sum
p (1..H).sum{|d|
	s = S/d
	next 0 if s*d != S
	is = I[B,s]
	next 0 if is.size != d || B[is[-1]].sum != s
	c = is.map{|is| A[is].transpose.map(&:sum) }
	next (1..W).sum{|d|
		t = s/d
		next 0 if t*d != s
		js = I[c[0],t]
		next 0 if js.size != d || c[0][js[-1]].sum != t
		next c.all?{|c| js.all?{|js| c[js].sum == t } }?1:0
	}
}-1

Submission Info

Submission Time
Task C - 国土分割 (Land Division)
User ds14050
Language Ruby (2.7.1)
Score 100
Code Size 566 Byte
Status AC
Exec Time 69 ms
Memory 14396 KB

Judge Result

Set Name Sample Subtask1 Subtask2 Subtask3
Score / Max Score 0 / 0 12 / 12 26 / 26 62 / 62
Status
AC × 4
AC × 50
AC × 83
AC × 206
Set Name Test Cases
Sample sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt
Subtask1 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt, 01-31.txt, 01-32.txt, 01-33.txt, 01-34.txt, 01-35.txt, 01-36.txt, 01-37.txt, 01-38.txt, 01-39.txt, 01-40.txt, 01-41.txt, 01-42.txt, 01-43.txt, 01-44.txt, 01-45.txt, 01-46.txt, 01-47.txt, 01-48.txt, sample-02.txt, sample-04.txt
Subtask2 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, 02-13.txt, 02-14.txt, 02-15.txt, 02-16.txt, 02-17.txt, 02-18.txt, 02-19.txt, 02-20.txt, 02-21.txt, 02-22.txt, 02-23.txt, 02-24.txt, 02-25.txt, 02-26.txt, 02-27.txt, 02-28.txt, 02-29.txt, 02-30.txt, 02-31.txt, 02-32.txt, 02-33.txt, 02-34.txt, 02-35.txt, 02-36.txt, 02-37.txt, 02-38.txt, 02-39.txt, 02-40.txt, 02-41.txt, 02-42.txt, 02-43.txt, 02-44.txt, 02-45.txt, 02-46.txt, 02-47.txt, 02-48.txt, 02-49.txt, 02-50.txt, 02-51.txt, 02-52.txt, 02-53.txt, 02-54.txt, 02-55.txt, 02-56.txt, 02-57.txt, 02-58.txt, 02-59.txt, 02-60.txt, 02-61.txt, 02-62.txt, 02-63.txt, 02-64.txt, 02-65.txt, 02-66.txt, 02-67.txt, 02-68.txt, 02-69.txt, 02-70.txt, 02-71.txt, 02-72.txt, 02-73.txt, 02-74.txt, 02-75.txt, 02-76.txt, 02-77.txt, 02-78.txt, 02-79.txt, sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt
Subtask3 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt, 01-31.txt, 01-32.txt, 01-33.txt, 01-34.txt, 01-35.txt, 01-36.txt, 01-37.txt, 01-38.txt, 01-39.txt, 01-40.txt, 01-41.txt, 01-42.txt, 01-43.txt, 01-44.txt, 01-45.txt, 01-46.txt, 01-47.txt, 01-48.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, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, 02-13.txt, 02-14.txt, 02-15.txt, 02-16.txt, 02-17.txt, 02-18.txt, 02-19.txt, 02-20.txt, 02-21.txt, 02-22.txt, 02-23.txt, 02-24.txt, 02-25.txt, 02-26.txt, 02-27.txt, 02-28.txt, 02-29.txt, 02-30.txt, 02-31.txt, 02-32.txt, 02-33.txt, 02-34.txt, 02-35.txt, 02-36.txt, 02-37.txt, 02-38.txt, 02-39.txt, 02-40.txt, 02-41.txt, 02-42.txt, 02-43.txt, 02-44.txt, 02-45.txt, 02-46.txt, 02-47.txt, 02-48.txt, 02-49.txt, 02-50.txt, 02-51.txt, 02-52.txt, 02-53.txt, 02-54.txt, 02-55.txt, 02-56.txt, 02-57.txt, 02-58.txt, 02-59.txt, 02-60.txt, 02-61.txt, 02-62.txt, 02-63.txt, 02-64.txt, 02-65.txt, 02-66.txt, 02-67.txt, 02-68.txt, 02-69.txt, 02-70.txt, 02-71.txt, 02-72.txt, 02-73.txt, 02-74.txt, 02-75.txt, 02-76.txt, 02-77.txt, 02-78.txt, 02-79.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, 03-12.txt, 03-13.txt, 03-14.txt, 03-15.txt, 03-16.txt, 03-17.txt, 03-18.txt, 03-19.txt, 03-20.txt, 03-21.txt, 03-22.txt, 03-23.txt, 03-24.txt, 03-25.txt, 03-26.txt, 03-27.txt, 03-28.txt, 03-29.txt, 03-30.txt, 03-31.txt, 03-32.txt, 03-33.txt, 03-34.txt, 03-35.txt, 03-36.txt, 03-37.txt, 03-38.txt, 03-39.txt, 03-40.txt, 03-41.txt, 03-42.txt, 03-43.txt, 03-44.txt, 03-45.txt, 03-46.txt, 03-47.txt, 03-48.txt, 03-49.txt, 03-50.txt, 03-51.txt, 03-52.txt, 03-53.txt, 03-54.txt, 03-55.txt, 03-56.txt, 03-57.txt, 03-58.txt, 03-59.txt, 03-60.txt, 03-61.txt, 03-62.txt, 03-63.txt, 03-64.txt, 03-65.txt, 03-66.txt, 03-67.txt, 03-68.txt, 03-69.txt, 03-70.txt, 03-71.txt, 03-72.txt, 03-73.txt, 03-74.txt, 03-75.txt, sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt
Case Name Status Exec Time Memory
01-01.txt AC 63 ms 14084 KB
01-02.txt AC 62 ms 14280 KB
01-03.txt AC 63 ms 14160 KB
01-04.txt AC 58 ms 14168 KB
01-05.txt AC 59 ms 14144 KB
01-06.txt AC 65 ms 14088 KB
01-07.txt AC 58 ms 14188 KB
01-08.txt AC 61 ms 14284 KB
01-09.txt AC 63 ms 14268 KB
01-10.txt AC 61 ms 13936 KB
01-11.txt AC 60 ms 14204 KB
01-12.txt AC 63 ms 14300 KB
01-13.txt AC 60 ms 14208 KB
01-14.txt AC 66 ms 14008 KB
01-15.txt AC 62 ms 14180 KB
01-16.txt AC 62 ms 14320 KB
01-17.txt AC 57 ms 14216 KB
01-18.txt AC 65 ms 14288 KB
01-19.txt AC 61 ms 14184 KB
01-20.txt AC 62 ms 14176 KB
01-21.txt AC 62 ms 14100 KB
01-22.txt AC 58 ms 14300 KB
01-23.txt AC 60 ms 14244 KB
01-24.txt AC 61 ms 14144 KB
01-25.txt AC 59 ms 14252 KB
01-26.txt AC 64 ms 14168 KB
01-27.txt AC 62 ms 14204 KB
01-28.txt AC 58 ms 14220 KB
01-29.txt AC 61 ms 14156 KB
01-30.txt AC 63 ms 14156 KB
01-31.txt AC 60 ms 14224 KB
01-32.txt AC 62 ms 14072 KB
01-33.txt AC 64 ms 14176 KB
01-34.txt AC 62 ms 14280 KB
01-35.txt AC 59 ms 14184 KB
01-36.txt AC 59 ms 14100 KB
01-37.txt AC 63 ms 14100 KB
01-38.txt AC 63 ms 14152 KB
01-39.txt AC 69 ms 14276 KB
01-40.txt AC 60 ms 14260 KB
01-41.txt AC 62 ms 14172 KB
01-42.txt AC 59 ms 14212 KB
01-43.txt AC 62 ms 14092 KB
01-44.txt AC 61 ms 14184 KB
01-45.txt AC 62 ms 14292 KB
01-46.txt AC 60 ms 14392 KB
01-47.txt AC 62 ms 14064 KB
01-48.txt AC 61 ms 14284 KB
02-01.txt AC 63 ms 14044 KB
02-02.txt AC 60 ms 14088 KB
02-03.txt AC 59 ms 14076 KB
02-04.txt AC 62 ms 14116 KB
02-05.txt AC 63 ms 14148 KB
02-06.txt AC 65 ms 14172 KB
02-07.txt AC 64 ms 14236 KB
02-08.txt AC 63 ms 14268 KB
02-09.txt AC 64 ms 14096 KB
02-10.txt AC 60 ms 14072 KB
02-11.txt AC 56 ms 14228 KB
02-12.txt AC 58 ms 14064 KB
02-13.txt AC 63 ms 14348 KB
02-14.txt AC 63 ms 14064 KB
02-15.txt AC 61 ms 14116 KB
02-16.txt AC 62 ms 14224 KB
02-17.txt AC 61 ms 14132 KB
02-18.txt AC 62 ms 14224 KB
02-19.txt AC 61 ms 14216 KB
02-20.txt AC 59 ms 14180 KB
02-21.txt AC 64 ms 14160 KB
02-22.txt AC 59 ms 14148 KB
02-23.txt AC 62 ms 14132 KB
02-24.txt AC 62 ms 14180 KB
02-25.txt AC 63 ms 14256 KB
02-26.txt AC 61 ms 14256 KB
02-27.txt AC 58 ms 14108 KB
02-28.txt AC 58 ms 14216 KB
02-29.txt AC 62 ms 14176 KB
02-30.txt AC 63 ms 13988 KB
02-31.txt AC 63 ms 14144 KB
02-32.txt AC 58 ms 14248 KB
02-33.txt AC 63 ms 14172 KB
02-34.txt AC 59 ms 14120 KB
02-35.txt AC 61 ms 14324 KB
02-36.txt AC 63 ms 14220 KB
02-37.txt AC 64 ms 14224 KB
02-38.txt AC 58 ms 14220 KB
02-39.txt AC 63 ms 14156 KB
02-40.txt AC 61 ms 14160 KB
02-41.txt AC 64 ms 14096 KB
02-42.txt AC 60 ms 14232 KB
02-43.txt AC 61 ms 14220 KB
02-44.txt AC 58 ms 14176 KB
02-45.txt AC 62 ms 14144 KB
02-46.txt AC 61 ms 14156 KB
02-47.txt AC 60 ms 14156 KB
02-48.txt AC 56 ms 14140 KB
02-49.txt AC 60 ms 14100 KB
02-50.txt AC 64 ms 14260 KB
02-51.txt AC 62 ms 14176 KB
02-52.txt AC 62 ms 14376 KB
02-53.txt AC 65 ms 14232 KB
02-54.txt AC 62 ms 14240 KB
02-55.txt AC 61 ms 14132 KB
02-56.txt AC 64 ms 14180 KB
02-57.txt AC 62 ms 14200 KB
02-58.txt AC 60 ms 14396 KB
02-59.txt AC 58 ms 14212 KB
02-60.txt AC 57 ms 14080 KB
02-61.txt AC 58 ms 14144 KB
02-62.txt AC 56 ms 14236 KB
02-63.txt AC 59 ms 14240 KB
02-64.txt AC 62 ms 14168 KB
02-65.txt AC 62 ms 14104 KB
02-66.txt AC 63 ms 14252 KB
02-67.txt AC 62 ms 14336 KB
02-68.txt AC 63 ms 14188 KB
02-69.txt AC 63 ms 14140 KB
02-70.txt AC 60 ms 14288 KB
02-71.txt AC 60 ms 14064 KB
02-72.txt AC 60 ms 14128 KB
02-73.txt AC 64 ms 14232 KB
02-74.txt AC 63 ms 14324 KB
02-75.txt AC 59 ms 14196 KB
02-76.txt AC 63 ms 13988 KB
02-77.txt AC 60 ms 14212 KB
02-78.txt AC 61 ms 14248 KB
02-79.txt AC 60 ms 14096 KB
03-01.txt AC 63 ms 14224 KB
03-02.txt AC 63 ms 13952 KB
03-03.txt AC 63 ms 14288 KB
03-04.txt AC 63 ms 14352 KB
03-05.txt AC 63 ms 14204 KB
03-06.txt AC 62 ms 14032 KB
03-07.txt AC 64 ms 14068 KB
03-08.txt AC 63 ms 14352 KB
03-09.txt AC 66 ms 14096 KB
03-10.txt AC 64 ms 14268 KB
03-11.txt AC 63 ms 14244 KB
03-12.txt AC 60 ms 14124 KB
03-13.txt AC 56 ms 14116 KB
03-14.txt AC 61 ms 14156 KB
03-15.txt AC 63 ms 14152 KB
03-16.txt AC 63 ms 14268 KB
03-17.txt AC 62 ms 13968 KB
03-18.txt AC 64 ms 14272 KB
03-19.txt AC 62 ms 14196 KB
03-20.txt AC 61 ms 14124 KB
03-21.txt AC 62 ms 14208 KB
03-22.txt AC 62 ms 14248 KB
03-23.txt AC 68 ms 14084 KB
03-24.txt AC 65 ms 14364 KB
03-25.txt AC 63 ms 14128 KB
03-26.txt AC 66 ms 14224 KB
03-27.txt AC 65 ms 14224 KB
03-28.txt AC 65 ms 14092 KB
03-29.txt AC 61 ms 14168 KB
03-30.txt AC 64 ms 14340 KB
03-31.txt AC 66 ms 14136 KB
03-32.txt AC 59 ms 14160 KB
03-33.txt AC 66 ms 14084 KB
03-34.txt AC 60 ms 14132 KB
03-35.txt AC 63 ms 14188 KB
03-36.txt AC 64 ms 14376 KB
03-37.txt AC 66 ms 14148 KB
03-38.txt AC 64 ms 14012 KB
03-39.txt AC 64 ms 14068 KB
03-40.txt AC 62 ms 14184 KB
03-41.txt AC 62 ms 14152 KB
03-42.txt AC 64 ms 14160 KB
03-43.txt AC 62 ms 14088 KB
03-44.txt AC 65 ms 14164 KB
03-45.txt AC 57 ms 14196 KB
03-46.txt AC 61 ms 14144 KB
03-47.txt AC 61 ms 14172 KB
03-48.txt AC 61 ms 13988 KB
03-49.txt AC 61 ms 14348 KB
03-50.txt AC 62 ms 14156 KB
03-51.txt AC 61 ms 14020 KB
03-52.txt AC 61 ms 14092 KB
03-53.txt AC 62 ms 14288 KB
03-54.txt AC 62 ms 14092 KB
03-55.txt AC 67 ms 14176 KB
03-56.txt AC 63 ms 14100 KB
03-57.txt AC 67 ms 14124 KB
03-58.txt AC 63 ms 14348 KB
03-59.txt AC 65 ms 14032 KB
03-60.txt AC 61 ms 14124 KB
03-61.txt AC 63 ms 14200 KB
03-62.txt AC 63 ms 14060 KB
03-63.txt AC 65 ms 14120 KB
03-64.txt AC 63 ms 14164 KB
03-65.txt AC 63 ms 14160 KB
03-66.txt AC 61 ms 14180 KB
03-67.txt AC 63 ms 14000 KB
03-68.txt AC 63 ms 14204 KB
03-69.txt AC 62 ms 14388 KB
03-70.txt AC 65 ms 14224 KB
03-71.txt AC 57 ms 14136 KB
03-72.txt AC 63 ms 14376 KB
03-73.txt AC 62 ms 14084 KB
03-74.txt AC 64 ms 14032 KB
03-75.txt AC 64 ms 14020 KB
sample-01.txt AC 62 ms 14236 KB
sample-02.txt AC 64 ms 14296 KB
sample-03.txt AC 68 ms 14344 KB
sample-04.txt AC 60 ms 14008 KB


2025-04-05 (Sat)
15:04:31 +00:00