Submission #13402510


Source Code Expand

# Studying https://atcoder.jp/contests/abc168/tasks/abc168_f
#      and https://mobile.twitter.com/chokudai/status/1262023105888698369

N,M = gets.split.map(&:to_i)
縦線 = N.times.map{ gets.split.map(&:to_i) }
横線 = M.times.map{ gets.split.map(&:to_i) }

経線 = 縦線.map{|_,_,c| c }.uniq.sort
緯線 = 横線.map{|d,| d }.uniq.sort

GW = 経線.size*2+3
GH = 緯線.size*2+3
GI = lambda{|横,縦|
	i = 経線.bsearch_index{|_| 横<=_ }||経線.size # 線分の端点の座標に対応する
	j = 緯線.bsearch_index{|_| 縦<=_ }||緯線.size
	i1 = 経線[i] != 横 ? 1 : 0 # 線分間の座標に対応するための補正
	j1 = 緯線[j] != 縦 ? 1 : 0
	next (2+2*j-j1)*GW+(2+2*i-i1)
}
Grid = lambda{|g|
	縦線.each{|a,b,c|
		GI[c,a].step(GI[c,b], GW){|i|
			g[i] = '0'
		}
	}
	i = 0
	GH.times{
		g[i] = g[i+GW-1] = '0'
		i += GW
	}

	横線.each{|d,e,f|
		GI[e,d].upto(GI[f,d]){|i|
			g[i] = '0'
		}
	}
	0.upto(GW-1){|i|
		g[i] = g[-1-i] = '0'
	}

	return g.to_i(2)
}['1'*(GW*GH)]
Area = lambda{|a|
	(GW+1).upto(GW+GW-2){|i|
		a[i] = a[-1-i] = Float::INFINITY
	}
	i = GW+1
	(GH-2).times{
		a[i] = a[i+GW-3] = Float::INFINITY
		i += GW
	}

	heights = 緯線.each_cons(2).map{|_1,_2| _2-_1 }
	widths = 経線.each_cons(2).map{|_1,_2| _2-_1 }
	j = (GW+1)*3
	heights.each{|h|
		i = 0
		widths.each{|w|
			a[j+i] = h*w
			i += 2
		}
		j += GW+GW
	}

	return a
}[[0]*(GW*GH)]

cow = 1 << GW*GH-1-GI[0,0]
while 0
	cow+ = (cow | cow>>1 | cow<<1 | cow>>GW | cow<<GW) & Grid
	break if cow == cow+
	cow = cow+
end

area = 0
until cow == 0
	a = cow ^ cow-1
	area += Area[-a.bit_length]
	cow &= ~a
end

puts(area.finite? ? area : 'INF')

Submission Info

Submission Time
Task F - . (Single Dot)
User ds14050
Language Ruby (2.7.1)
Score 0
Code Size 1726 Byte
Status WA
Exec Time 3315 ms
Memory 202824 KiB

Compile Error

./Main.rb:53: warning: `_1' is reserved for numbered parameter; consider another name
./Main.rb:53: warning: `_2' is reserved for numbered parameter; consider another name
./Main.rb:54: warning: `_1' is reserved for numbered parameter; consider another name
./Main.rb:54: warning: `_2' is reserved for numbered parameter; consider another name
./Main.rb:73: warning: literal in condition

Judge Result

Set Name Sample Subtask1
Score / Max Score 0 / 0 0 / 600
Status
AC × 2
AC × 41
WA × 21
TLE × 34
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
Subtask1 sample_01.txt, sample_02.txt, sub1_01.txt, sub1_02.txt, sub1_03.txt, sub1_04.txt, sub1_05.txt, sub1_06.txt, sub1_07.txt, sub1_08.txt, sub1_09.txt, sub1_10.txt, sub1_11.txt, sub1_12.txt, sub1_13.txt, sub1_14.txt, sub1_15.txt, sub1_16.txt, sub1_17.txt, sub1_18.txt, sub1_19.txt, sub1_20.txt, sub1_21.txt, sub1_22.txt, sub1_23.txt, sub1_24.txt, sub1_25.txt, sub1_26.txt, sub1_27.txt, sub1_28.txt, sub1_29.txt, sub1_30.txt, sub1_31.txt, sub1_32.txt, sub1_33.txt, sub1_34.txt, sub1_35.txt, sub1_36.txt, sub1_37.txt, sub1_38.txt, sub1_39.txt, sub1_40.txt, sub1_41.txt, sub1_42.txt, sub1_43.txt, sub1_44.txt, sub1_45.txt, sub1_46.txt, sub1_47.txt, sub1_48.txt, sub1_49.txt, sub1_50.txt, sub1_51.txt, sub1_52.txt, sub1_53.txt, sub1_54.txt, sub1_55.txt, sub1_56.txt, sub1_57.txt, sub1_58.txt, sub1_59.txt, sub1_60.txt, sub1_61.txt, sub1_62.txt, sub1_63.txt, sub1_64.txt, sub1_65.txt, sub1_66.txt, sub1_67.txt, sub1_68.txt, sub1_69.txt, sub1_70.txt, sub1_71.txt, sub1_72.txt, sub1_73.txt, sub1_74.txt, sub1_75.txt, sub1_76.txt, sub1_77.txt, sub1_78.txt, sub1_79.txt, sub1_80.txt, sub1_81.txt, sub1_82.txt, sub1_83.txt, sub1_84.txt, sub1_85.txt, sub1_86.txt, sub1_87.txt, sub1_88.txt, sub1_89.txt, sub1_90.txt, sub1_91.txt, sub1_92.txt, sub1_93.txt, sub1_94.txt
Case Name Status Exec Time Memory
sample_01.txt AC 52 ms 14416 KiB
sample_02.txt AC 53 ms 14400 KiB
sub1_01.txt AC 274 ms 107488 KiB
sub1_02.txt WA 268 ms 104904 KiB
sub1_03.txt AC 109 ms 63288 KiB
sub1_04.txt AC 109 ms 67568 KiB
sub1_05.txt AC 1911 ms 167256 KiB
sub1_06.txt AC 272 ms 106504 KiB
sub1_07.txt AC 135 ms 58784 KiB
sub1_08.txt AC 65 ms 18604 KiB
sub1_09.txt AC 98 ms 24528 KiB
sub1_10.txt AC 291 ms 59332 KiB
sub1_11.txt AC 57 ms 15044 KiB
sub1_12.txt WA 55 ms 14416 KiB
sub1_13.txt AC 52 ms 14176 KiB
sub1_14.txt AC 56 ms 14172 KiB
sub1_15.txt WA 53 ms 14300 KiB
sub1_16.txt AC 53 ms 14276 KiB
sub1_17.txt AC 1716 ms 174100 KiB
sub1_18.txt TLE 3314 ms 179648 KiB
sub1_19.txt TLE 3314 ms 179636 KiB
sub1_20.txt TLE 3314 ms 179988 KiB
sub1_21.txt TLE 3314 ms 173212 KiB
sub1_22.txt TLE 3315 ms 193832 KiB
sub1_23.txt TLE 3314 ms 174844 KiB
sub1_24.txt TLE 3314 ms 181384 KiB
sub1_25.txt TLE 3314 ms 179364 KiB
sub1_26.txt TLE 3314 ms 178912 KiB
sub1_27.txt TLE 3314 ms 173780 KiB
sub1_28.txt TLE 3313 ms 156640 KiB
sub1_29.txt TLE 3315 ms 187212 KiB
sub1_30.txt TLE 3314 ms 161892 KiB
sub1_31.txt AC 277 ms 111868 KiB
sub1_32.txt TLE 3312 ms 123936 KiB
sub1_33.txt TLE 3314 ms 166952 KiB
sub1_34.txt TLE 3314 ms 170532 KiB
sub1_35.txt TLE 3312 ms 117704 KiB
sub1_36.txt TLE 3314 ms 187832 KiB
sub1_37.txt TLE 3315 ms 193136 KiB
sub1_38.txt TLE 3312 ms 169952 KiB
sub1_39.txt AC 799 ms 88716 KiB
sub1_40.txt TLE 3315 ms 192996 KiB
sub1_41.txt TLE 3313 ms 170608 KiB
sub1_42.txt WA 51 ms 14492 KiB
sub1_43.txt WA 56 ms 14412 KiB
sub1_44.txt AC 52 ms 14372 KiB
sub1_45.txt WA 55 ms 14328 KiB
sub1_46.txt WA 52 ms 14360 KiB
sub1_47.txt AC 491 ms 101032 KiB
sub1_48.txt WA 665 ms 108868 KiB
sub1_49.txt AC 375 ms 65828 KiB
sub1_50.txt WA 160 ms 79836 KiB
sub1_51.txt AC 780 ms 109604 KiB
sub1_52.txt AC 824 ms 96572 KiB
sub1_53.txt AC 600 ms 83900 KiB
sub1_54.txt WA 753 ms 85384 KiB
sub1_55.txt TLE 3314 ms 177656 KiB
sub1_56.txt TLE 3315 ms 193140 KiB
sub1_57.txt TLE 3314 ms 168860 KiB
sub1_58.txt TLE 3314 ms 174196 KiB
sub1_59.txt TLE 3315 ms 191904 KiB
sub1_60.txt TLE 3315 ms 202824 KiB
sub1_61.txt WA 1178 ms 158684 KiB
sub1_62.txt TLE 3315 ms 191812 KiB
sub1_63.txt WA 66 ms 19476 KiB
sub1_64.txt TLE 3313 ms 153872 KiB
sub1_65.txt WA 86 ms 45504 KiB
sub1_66.txt TLE 3314 ms 173992 KiB
sub1_67.txt AC 1247 ms 134764 KiB
sub1_68.txt TLE 3313 ms 168808 KiB
sub1_69.txt TLE 3313 ms 176092 KiB
sub1_70.txt TLE 3313 ms 170672 KiB
sub1_71.txt AC 52 ms 14304 KiB
sub1_72.txt AC 56 ms 14552 KiB
sub1_73.txt AC 51 ms 14348 KiB
sub1_74.txt AC 227 ms 27864 KiB
sub1_75.txt AC 96 ms 17572 KiB
sub1_76.txt AC 547 ms 54336 KiB
sub1_77.txt AC 62 ms 19468 KiB
sub1_78.txt AC 64 ms 19380 KiB
sub1_79.txt AC 75 ms 23788 KiB
sub1_80.txt AC 79 ms 23932 KiB
sub1_81.txt AC 78 ms 24228 KiB
sub1_82.txt AC 92 ms 26504 KiB
sub1_83.txt WA 53 ms 14232 KiB
sub1_84.txt AC 75 ms 21672 KiB
sub1_85.txt AC 91 ms 23900 KiB
sub1_86.txt WA 52 ms 14452 KiB
sub1_87.txt AC 54 ms 14512 KiB
sub1_88.txt WA 53 ms 14244 KiB
sub1_89.txt WA 412 ms 54088 KiB
sub1_90.txt WA 408 ms 54144 KiB
sub1_91.txt WA 429 ms 53884 KiB
sub1_92.txt WA 411 ms 53972 KiB
sub1_93.txt WA 427 ms 54024 KiB
sub1_94.txt AC 52 ms 14308 KiB