Largest Square Submatrix of all 1's Haha Expert

Find the largest square submatrix consisting entirely of 1s as fast as possible.

Input

A 10,000 x 10,000 matrix of uint8 values (0 or 1) on STDIN.

0, 1, 0, 1, 1
0, 1, 1, 1, 1
0, 0, 1, 0, 0
1, 0, 1, 1, 0

Output

Print the side length of the largest all-ones square submatrix to STDOUT. The answer is guaranteed to be greater than 1.

For the example above, the output is:

2
Date AuthorLanguageStatus Score
Oct 25, 2026 11:19C21C21CPPclang++20.1.2Success57,237
Oct 25, 2026 10:10C21C21CPPclang++20.1.2Success55,550
Oct 25, 2026 10:09C21C21CPPclang++20.1.2Success57,227
Oct 25, 2026 09:58C21C21CPPclang++20.1.2Error
Oct 25, 2026 09:49C21C21CPPclang++20.1.2Error
Oct 24, 2026 09:30C21C21CPPclang++20.1.2Success48,860+78.33 RP
Oct 24, 2026 09:12C21C21CPPclang++20.1.2Success79,152+16.97 RP
Oct 24, 2026 07:39C21C21CPPclang++20.1.2Success91,437+109.36 RP
Oct 23, 2026 13:58C21C21CPPclang++20.1.2Error
Oct 23, 2026 13:56C21C21CPPg++10.5.0Error
Oct 23, 2026 13:54C21C21CPPclang++20.1.2Error
Oct 21, 2026 03:30highload-churnerhighload-churnerCPPclang++20.1.2Success1,677+35.46 RP
Oct 21, 2026 03:16highload-churnerhighload-churnerCPPclang++20.1.2Success1,682+276.20 RP
Oct 21, 2026 03:14highload-churnerhighload-churnerCPPclang++20.1.2Success1,740
Oct 21, 2026 02:45highload-churnerhighload-churnerCPPclang++20.1.2Success1,752
Oct 21, 2026 02:43highload-churnerhighload-churnerCPPclang++20.1.2Success1,745
Oct 21, 2026 02:42highload-churnerhighload-churnerCPPclang++20.1.2Success1,770
Oct 21, 2026 02:40highload-churnerhighload-churnerCPPclang++20.1.2Success1,762
Oct 21, 2026 02:35highload-churnerhighload-churnerCPPclang++20.1.2Success1,772
Oct 21, 2026 02:32highload-churnerhighload-churnerCPPclang++20.1.2Success1,760
Oct 21, 2026 02:30highload-churnerhighload-churnerCPPclang++20.1.2Success1,787
Oct 21, 2026 02:19highload-churnerhighload-churnerCPPclang++20.1.2Success1,807
Oct 21, 2026 02:17highload-churnerhighload-churnerCPPclang++20.1.2Success1,757
Oct 21, 2026 02:12highload-churnerhighload-churnerCPPclang++20.1.2Success1,770
Oct 21, 2026 02:10highload-churnerhighload-churnerCPPclang++20.1.2Success1,777
Oct 21, 2026 02:09highload-churnerhighload-churnerCPPclang++20.1.2Success1,767
Oct 21, 2026 02:07highload-churnerhighload-churnerCPPclang++20.1.2Success1,780
Oct 21, 2026 01:56highload-churnerhighload-churnerCPPclang++20.1.2Success1,765
Oct 21, 2026 01:54highload-churnerhighload-churnerCPPclang++20.1.2Success1,737
Oct 21, 2026 01:44highload-churnerhighload-churnerCPPg++14.2.0Success1,822
Oct 21, 2026 01:39highload-churnerhighload-churnerCPPg++14.2.0Success7,400
Oct 21, 2026 01:15highload-churnerhighload-churnerCPPg++14.2.0Success7,685
Oct 21, 2026 01:12highload-churnerhighload-churnerCPPg++14.2.0Success7,390
Oct 20, 2026 10:12highload-churnerhighload-churnerCPPclang++20.1.2Success1,750
Oct 20, 2026 10:10highload-churnerhighload-churnerCPPclang++20.1.2Success1,760
Oct 20, 2026 10:08highload-churnerhighload-churnerCPPclang++20.1.2Success1,790
Oct 20, 2026 09:53highload-churnerhighload-churnerCPPclang++20.1.2Success1,777
Oct 20, 2026 09:51highload-churnerhighload-churnerCPPclang++20.1.2Success1,757
Oct 20, 2026 09:50highload-churnerhighload-churnerCPPclang++20.1.2Success1,760
Oct 20, 2026 09:48highload-churnerhighload-churnerCPPclang++20.1.2Success1,765
Oct 20, 2026 09:47highload-churnerhighload-churnerCPPclang++20.1.2Success1,767
Oct 20, 2026 09:45highload-churnerhighload-churnerCPPclang++20.1.2Success1,787
Oct 20, 2026 09:39highload-churnerhighload-churnerCPPclang++20.1.2Success1,795
Oct 20, 2026 09:38highload-churnerhighload-churnerCPPclang++20.1.2Success1,735
Oct 20, 2026 09:36highload-churnerhighload-churnerCPPclang++20.1.2Success1,805
Oct 20, 2026 09:30highload-churnerhighload-churnerCPPclang++20.1.2Success1,770
Oct 20, 2026 09:26highload-churnerhighload-churnerCPPg++14.2.0Success1,790
Oct 20, 2026 09:19highload-churnerhighload-churnerCPPg++14.2.0Success1,820
Oct 20, 2026 09:17highload-churnerhighload-churnerCPPg++14.2.0Success1,805
Oct 20, 2026 09:11highload-churnerhighload-churnerCPPg++14.2.0Success1,792
Oct 20, 2026 09:09highload-churnerhighload-churnerCPPg++14.2.0Success1,777
Oct 20, 2026 09:07highload-churnerhighload-churnerCPPg++14.2.0Success1,767
Oct 20, 2026 09:00highload-churnerhighload-churnerCPPg++14.2.0Success1,820
Oct 20, 2026 08:53highload-churnerhighload-churnerCPPg++14.2.0Success1,777
Oct 20, 2026 08:50highload-churnerhighload-churnerCPPg++14.2.0Success1,797
Oct 20, 2026 08:44highload-churnerhighload-churnerCPPg++14.2.0Success1,775
Oct 20, 2026 08:42highload-churnerhighload-churnerCPPg++14.2.0Success1,815
Oct 20, 2026 08:41highload-churnerhighload-churnerCPPg++14.2.0Success1,817
Oct 20, 2026 08:35highload-churnerhighload-churnerCPPg++14.2.0Success1,807
Oct 20, 2026 08:33highload-churnerhighload-churnerCPPg++14.2.0Success1,827
Oct 20, 2026 08:32highload-churnerhighload-churnerCPPg++14.2.0Success1,817
Oct 20, 2026 08:30highload-churnerhighload-churnerCPPg++14.2.0Success1,817
Oct 20, 2026 08:22highload-churnerhighload-churnerCPPg++14.2.0Success2,050
Oct 20, 2026 08:18highload-churnerhighload-churnerCPPg++14.2.0Success1,765
Oct 20, 2026 08:16highload-churnerhighload-churnerCPPg++14.2.0Success1,780
Oct 20, 2026 08:15highload-churnerhighload-churnerCPPg++14.2.0Success1,777
Oct 20, 2026 08:12highload-churnerhighload-churnerCPPg++14.2.0Success1,792
Oct 20, 2026 08:09highload-churnerhighload-churnerCPPclang++20.1.2Success1,722+50.34 RP
Oct 20, 2026 08:08highload-churnerhighload-churnerCPPclang++20.1.2Success1,742
Oct 20, 2026 08:06highload-churnerhighload-churnerCPPg++14.2.0Success9,350
Oct 20, 2026 08:04highload-churnerhighload-churnerCPPclang++20.1.2Success1,765
Oct 20, 2026 07:58highload-churnerhighload-churnerCPPclang++20.1.2Success1,777
Oct 20, 2026 07:57highload-churnerhighload-churnerCPPclang++20.1.2Success1,775
Oct 20, 2026 07:55highload-churnerhighload-churnerCPPclang++20.1.2Success1,777
Oct 20, 2026 07:54highload-churnerhighload-churnerCPPclang++20.1.2Success1,790
Oct 20, 2026 07:52highload-churnerhighload-churnerCPPclang++20.1.2Success1,780
Oct 20, 2026 07:48highload-churnerhighload-churnerCPPclang++20.1.2Success1,770
Oct 20, 2026 07:45highload-churnerhighload-churnerCPPg++13.3.0Success1,775
Oct 20, 2026 07:42highload-churnerhighload-churnerCPPg++14.2.0Success1,815
Oct 20, 2026 07:40highload-churnerhighload-churnerCPPclang++20.1.2Success1,750
Oct 20, 2026 07:34highload-churnerhighload-churnerCPPg++13.3.0Success1,760
Oct 20, 2026 07:31highload-churnerhighload-churnerCPPg++14.2.0Success1,810
Oct 20, 2026 07:26highload-churnerhighload-churnerCPPg++14.2.0Success1,782
Oct 20, 2026 07:20highload-churnerhighload-churnerCPPg++14.2.0Success1,745
Oct 20, 2026 07:18highload-churnerhighload-churnerCPPg++14.2.0Success1,782
Oct 20, 2026 07:13highload-churnerhighload-churnerCPPg++14.2.0Success1,772
Oct 20, 2026 07:11highload-churnerhighload-churnerCPPg++14.2.0Success1,770
Oct 20, 2026 07:06highload-churnerhighload-churnerCPPg++14.2.0Success1,850
Oct 20, 2026 07:00highload-churnerhighload-churnerCPPg++14.2.0Success1,780
Oct 20, 2026 06:58highload-churnerhighload-churnerCPPg++14.2.0Success1,782
Oct 20, 2026 06:53highload-churnerhighload-churnerCPPg++14.2.0Success1,770
Oct 20, 2026 06:47highload-churnerhighload-churnerCPPg++14.2.0Success1,775
Oct 20, 2026 06:41highload-churnerhighload-churnerCPPg++14.2.0Success1,732+49.57 RP
Oct 20, 2026 06:36highload-churnerhighload-churnerCPPg++14.2.0Success1,792
Oct 20, 2026 06:31highload-churnerhighload-churnerCPPg++14.2.0Success1,770
Oct 20, 2026 06:21highload-churnerhighload-churnerCPPg++14.2.0Success1,785
Oct 20, 2026 06:19highload-churnerhighload-churnerCPPg++14.2.0Success1,780
Oct 20, 2026 06:14highload-churnerhighload-churnerCPPg++14.2.0Success1,822
Oct 20, 2026 06:12highload-churnerhighload-churnerCPPg++14.2.0Success1,800
Oct 20, 2026 06:07highload-churnerhighload-churnerCPPg++14.2.0Success1,802