Problem F
Största ön
Du ska skriva ett program som räknar ut hur stor den största sammanhängande ön är på ett sjökort. Sjökorten representeras av en textsträng med tecknen ’$\sim $’ för vatten, och ’@’ för land. Givet ett sjökort som indata ska ditt program returnera antalet @-tecken i den största sammanhängande ön som finns på kortet. Två @-tecken anses tillhöra samma ö om de angränsar till varandra rakt i sid-led eller höjdled (diagonaler räknas alltså inte).
Indata
Alla indatafiler inleds med två tal, x och y, där x anger hur många rader som sjökortet har, och y anger hur många tecken det finns i varje rad. Du kan anta att 1 <= x <= 10 000, och 1 <= y <= 10 000. Därefter följer x st rader med y tecken i varje, som består av tecknen ’$\sim $’ och ’@’.
Utdata
Ett heltal, som anger storleken på den största ön. Om det inte finns någon ö alls på sjökortet ska det korrekta svaret vara ’0’.
Sample Input 1 | Sample Output 1 |
---|---|
10 10 ~~~~~~~~~~ ~@~~~~~~~~ ~~~~~~~~~~ ~~~@@~~~~~ ~~~@~~~~~~ ~~~~~~~~~~ ~~~~~~~~~~ ~@@@@@@@@@ ~~~~~~~~~~ ~~~~~~~~~~ |
9 |
Sample Input 2 | Sample Output 2 |
---|---|
3 3 ~~~ ~@~ ~~~ |
1 |