I produced the logic but implementation seems tough |
shrutichandel wrote: |
---|
I produced the logic |
shrutichandel wrote: |
---|
I wrote code for rotation |
program main implicit none integer i, j, N integer, allocatable :: rowsum(:), colsum(:) character, allocatable :: ch(:) read *, N allocate( rowsum( N ), colsum( N ), ch(N) ) rowsum = 0; colsum = 0 do i = 1, N read *, ch rowsum(i) = count( ch == 'C' ) where ( ch == 'C' ) colsum = colsum + 1 end do print *, max( bestSquare( rowsum ), bestSquare( colsum ) ) deallocate( rowsum, colsum, ch ) contains integer function bestSquare( height ) integer, intent(in) :: height(:) integer N, row, maxgap, gap, i N = size( height ) bestSquare = N - maxval( height ) do row = N - bestSquare, 1, -1 maxGap = 0 gap = 0 do i = 1, N if ( height(i) < row ) then gap = gap + 1 else gap = 0 end if maxGap = max( gap, maxGap ) end do if ( maxGap <= bestSquare ) exit bestSquare = bestSquare + 1 end do end function bestSquare end program main |
CDCDCCCDDCDDCCDDCDCDCCCDCDDDCCCDDCCCDCDDDDCCDDCCCD DCCCCDDCDCCCDDDCDCCDCCDCCCCCDCCDDDCDDDDDCDCCCDDCDD DCDCCDCDCDDDDDCCCDDDDDDDCDCDDCDCDCDCCCDDCCDDDCDCCC DDCCDDDDCCDCCCDCDDCCDCCDDCDDCDCCDCDDDDDCCCCDDDDDCC DDCDDDCDDCDCDDCDDDCCDDDDDCDDDCDDDCDCDCDDCCCDDDDCDD CCDDCCCCCDDCDCDDCDCDCCDCDDDCCCDDDCCDCCDDDCCCCCDCCC CCCCCDCCDDDCDDCDDCCDDDDDCDCDCCDDDDCCDDDCCCDCDDCDCC DCCCDCCDDCDDCDDDCDCDCCCCCDDDDCDDCDDDDDCCCDDCCDCDDD CCDCDDDCCCDCCCDCCDDDCDDCCCCCDDCDDCDCCDCCDCCCDDCDCD DCCDCDCCCDCCDCDCCDDDCDDDDDCCDCDCCDDCCDCCDCDCDCDCDD DCDDCCDDDDDCDCCCDDDDDDCDDDDDDCDDDCCCDCCCDDDCDDDDCC DDDDCDDDDDDCDCDCDDDDCCCCDCDCDDCDDCCCCCDDCDCDCDDDCC DDCDCCCDDCDCDDDCCDCDCDDDCDDCCDCCCDDDCCDCDDDDCCCDCC DCDDCDCDCCCDDCCCCCCDDCDDCDCCCCDCDDDCDDCCCCCDCCDCCC DDDCCDCCCDCDCCCDDCDDCDDDCCDDCDCDCCDDCDDDCDDCDCDDCD DCDCDDDCDDCDDDDCDDCCDDCCCCDDDCDCDDDDDDDDCDCCCCCCCD DDDDCDDCDCCDDCCDCDDCDDDDCDCDCDDDDCDDDCDCDDDDDDDCCD CDDCCCDDDDDCDCCCCCDCCCDDDCDCCDDDCDCDDDCDCCCDDDCCDC CDCCDCCDDCCDCCDCDDDCCCDDDDDDCCCDDCCCCDDDDDCDDDDCDC CDDDDCCDDDCCDCDDDCCCDCCDDCCDDDCCDDDDDCDCDCCCDDCCCD DDDCDCDDDCDCDDCDCCCCCDDDCDCDCCCDCDDDDDDDCDCCDCCCDD DDCCDCDCDCCDDCDCCDCDDDCCCDDDCDCDCCCCCDCCCCDCCDCCDC CDCCCDDDCDCCDDDCCDDCCCCDCDDCDDCCCCCCCCDDDDDDCDDDDC DCCCCCDCDCDDCCCDCCCDCCCCDCDCDCCDCDDCDCDCDDCCCDDCCD CCCDCDDDDCDDDDDDCCCDDCCCCCDDDCCDDCCCCDDCCCDCDCCCDC CCCDCDDDCDCDDCCCDCCDDCCCDDCCCDDCCCDDCCDDDDCDCDCCDC DCDCCDCDCDDDDCDCCCDCDCDCCDCDCCCDCCCDCDDCDCDCCCCCCC DCDDDDCDDCCCDDCCDDDCCCCDDDCDCCCDCCCDDCDDCDCCCCDDCC CDCDDDDCDDCDDDDCCCCDDDDCCCDDDCDDDCDDDCDCCDDDCDCCDC DCCDDDCCDDCDCCCDDCDCCDDCDDDDDDDCDDDDCCCCCDCDCDCDDC DDCCCDDDDCDCDCDCCCDCDCDDCCCCDDDDDCCDCCDDDCDDCCCCCC DDCCCDDDDDCDDCDCDDCCDCCDCCCDCCDDDDCDDCDCDDCDDDDDDD CCCDCCDDCCDDCDDDDCCCDDDDDCDDCDCCCDDCCDCCCDCDDDDCCD CCCDDDDDDDDCCDDCCDCDDCCCCDDCCDDDCDDDCCCDCDCCCCCCCC DDDDDDDCCCDCDDDDCDCDDCDDDCDDCDCCDCDCDCCCCCDDDDDDDD DDCDDCDDDCCCDCDCDCDDDDCCDDDDDCDDDDDDDDCDDCDDDCDDDC CCCDCCDDDCDDDCDCDDCDDDDDCDDCCDCCDCCCDCDDDCCDCDCDDC DCCCCCDDDCDCCCCCDDDDDCCCDCDDDCDCDDDDDDCCCDDCCCDCCC DCCDCDDCCCCCDDDDCCCDCDCCDCDDCCCDDDDCDDDDCCCDDDCDCC CDCDCCCDDCCDCCCCDDCCDCDCCCCCCDDDCCDCCDCDCDDCDDCDCD CDCCCDCCCDDCCCDCCCCCDDDDDCCDCDDDDDDDDDCCDCCCDCDCDC DDCDCCDDDDDCDDDDDCDCDDDCCDCDCCDCDCDCDDCDDDDDDCDCCD CCCDDDCDDCCDDDCCCCDDCCDCDCDDCDCDDCCDCDDDDCCDCCCDDD DCDCCDCCCCDCCCCDDDCDCDCCCDCDDCCDDCDCCDDCDDCCCDCDDC CDCCDCDDCDDDCDCDDDCDCCCCDCDDCDCCDDCDDDDCCCCDCCDCDC CDCDCDCCCDDDCCCDDDDDDCDCDCDDDDCDDCDDCDCDCCCCCCDDCC DDDCDCDCCDCDDDCCCDDDDDDCDCCCDCCCDDCDDCDCCDDDCCCCCC CDCDDCCDCCCCCCCDDCDCCCCCCDDDDCCCDDCDCDCCCCDCDDCDDC DCDDCCCCDDDDCDCCCCCDDDDCDDDDDDDCDCDDCCDDCCCCCCDCDD DDDCDDDDDCCCCDDCDDDCDCCCCCCCDCCDDCCDDCDCDDDCCCCCCD Rotate LEFT: -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------C---------C--C--------------------C-- -----C-------C-------C-C--C------------C-------C-- -----C--C----C-------C-C--C------------C---C---C-- -----C--C----C-------C-CCCC------C-----C---C---C-- CC---C--C----C-------C-CCCCC--C--C---C-CC--C---C-C CC---C--CC---C---C---CCCCCCC--C--C---CCCC--CC-CC-C CC---CC-CC--CC---C---CCCCCCC--C-CC---CCCC-CCCCCC-C CC-C-CC-CC--CC---CCC-CCCCCCC--C-CC--CCCCC-CCCCCCCC CCCC-CCCCC--CCC--CCCCCCCCCCC-CC-CC--CCCCC-CCCCCCCC CCCC-CCCCC-CCCCC-CCCCCCCCCCC-CC-CC--CCCCC-CCCCCCCC CCCC-CCCCC-CCCCC-CCCCCCCCCCCCCC-CC--CCCCC-CCCCCCCC CCCC-CCCCC-CCCCC-CCCCCCCCCCCCCCCCC--CCCCC-CCCCCCCC CCCC-CCCCCCCCCCC-CCCCCCCCCCCCCCCCCC-CCCCCCCCCCCCCC CCCC-CCCCCCCCCCC-CCCCCCCCCCCCCCCCCC-CCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC-CCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC Max: 20 Rotate RIGHT: CCCCCCCCCCCCCCC----------------------------------- CCCCCCCCCCCCCCCC---------------------------------- CCCCCCCCCCCCCCCC---------------------------------- CCCCCCCCCCCCCCCCCC-------------------------------- CCCCCCCCCCCCCCCCCC-------------------------------- CCCCCCCCCCCCCCCCCC-------------------------------- CCCCCCCCCCCCCCCCCCC------------------------------- CCCCCCCCCCCCCCCCCCCC------------------------------ CCCCCCCCCCCCCCCCCCCCC----------------------------- CCCCCCCCCCCCCCCCCCCCC----------------------------- CCCCCCCCCCCCCCCCCCCCCC---------------------------- CCCCCCCCCCCCCCCCCCCCCC---------------------------- CCCCCCCCCCCCCCCCCCCCCC---------------------------- CCCCCCCCCCCCCCCCCCCCCC---------------------------- CCCCCCCCCCCCCCCCCCCCCC---------------------------- CCCCCCCCCCCCCCCCCCCCCCC--------------------------- CCCCCCCCCCCCCCCCCCCCCCC--------------------------- CCCCCCCCCCCCCCCCCCCCCCC--------------------------- CCCCCCCCCCCCCCCCCCCCCCC--------------------------- CCCCCCCCCCCCCCCCCCCCCCC--------------------------- CCCCCCCCCCCCCCCCCCCCCCCC-------------------------- CCCCCCCCCCCCCCCCCCCCCCCC-------------------------- CCCCCCCCCCCCCCCCCCCCCCCC-------------------------- CCCCCCCCCCCCCCCCCCCCCCCC-------------------------- CCCCCCCCCCCCCCCCCCCCCCCC-------------------------- CCCCCCCCCCCCCCCCCCCCCCCCC------------------------- CCCCCCCCCCCCCCCCCCCCCCCCC------------------------- CCCCCCCCCCCCCCCCCCCCCCCCC------------------------- CCCCCCCCCCCCCCCCCCCCCCCCC------------------------- CCCCCCCCCCCCCCCCCCCCCCCCC------------------------- CCCCCCCCCCCCCCCCCCCCCCCCC------------------------- CCCCCCCCCCCCCCCCCCCCCCCCCC------------------------ CCCCCCCCCCCCCCCCCCCCCCCCCC------------------------ CCCCCCCCCCCCCCCCCCCCCCCCCC------------------------ CCCCCCCCCCCCCCCCCCCCCCCCCC------------------------ CCCCCCCCCCCCCCCCCCCCCCCCCC------------------------ CCCCCCCCCCCCCCCCCCCCCCCCCC------------------------ CCCCCCCCCCCCCCCCCCCCCCCCCC------------------------ CCCCCCCCCCCCCCCCCCCCCCCCCCC----------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCC----------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCC----------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCCC---------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCCC---------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCCCC--------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCCCC--------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCCCC--------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC-------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC-------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC-------------------- CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC-------------------- Max: 25 |
I think you can only do one "melt" |
No rotations are possible when the furnace starts heating. |
|
|
-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------C---------C--C--------------------C-- -----C-------C-------C-C--C------------C-------C-- -----C--C----C-------C-C--C------------C---C---C-- -----C--C----C-------C-CCCC------C-----C---C---C-- CC---C--C----C-------C-CCCCC--C--C---C-CC--C---C-C CC---C--CC---C---C---CCCCCCC--C--C---CCCC--CC-CC-C CC---CC-CC--CC---C---CCCCCCC--C-CC---CCCC-CCCCCC-C CC-C-CC-CC--CC---CCC-CCCCCCC--C-CC--CCCCC-CCCCCCCC CCCC-CCCCC--CCC--CCCCCCCCCCC-CC-CC--CCCCC-CCCCCCCC CCCC-CCCCC-CCCCC-CCCCCCCCCCC-CC-CC--CCCCC-CCCCCCCC CCCC-CCCCC-CCCCC-CCCCCCCCCCCCCC-CC--CCCCC-CCCCCCCC CCCC-CCCCC-CCCCC-CCCCCCCCCCCCCCCCC--CCCCC-CCCCCCCC CCCC-CCCCCCCCCCC-CCCCCCCCCCCCCCCCCC-CCCCCCCCCCCCCC CCCC-CCCCCCCCCCC-CCCCCCCCCCCCCCCCCC-CCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC-CCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC Max: 20 -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- --C----------------------------------------------- --C-C----------C---------------------------------C --C-C----------C-------------------------------C-C --C-C--------C-C--C--------------C------C-C----C-C --C-C----C---C-C--C--C-C-----CC--C------C-C----CCC --C-C----C-C-C-C--C--C-CC---CCC--C-----CC-CCC--CCC --C-C----C-C-C-CC-C--C-CCC--CCC--C-----CC-CCC-CCCC -CC-C----C-C-C-CC-C--C-CCC--CCC--C-----CCCCCC-CCCC -CCCC----C-C-C-CC-C--C-CCC--CCC--C--CC-CCCCCCCCCCC -CCCC-C--CCC-CCCCCC--CCCCC--CCC--C--CC-CCCCCCCCCCC -CCCCCC--CCC-CCCCCC-CCCCCC--CCC--CCCCC-CCCCCCCCCCC CCCCCCC--CCC-CCCCCCCCCCCCCC-CCC--CCCCC-CCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCC-CCCC-CCCCC-CCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCC-CCCC-CCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC-CCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC-CCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC Max: 22 |