Islands
#include <iostream>
#include <string>
#include <vector>
using namespace std;
class Islands
{
public:
int beachLength( vector <string> kingdom );
};
int Islands::beachLength( vector <string> kingdom )
{
int h = (int)kingdom.size();
int w = (int)kingdom[0].length();
int l = 0;
for ( int y=0; y<h; y++ )
for ( int x=0; x<w; x++ )
{
if ( x > 0 && kingdom[y][x] != kingdom[y][x-1] ) l++;
if ( y > 0 && kingdom[y][x] != kingdom[y-1][x] ) l++;
if ( y % 2 == 0 )
{
if ( y > 0 && x > 0 && kingdom[y][x] != kingdom[y-1][x-1] ) l++;
}
else
{
if ( y > 0 && x+1 < w && kingdom[y][x] != kingdom[y-1][x+1] ) l++;
}
}
return l;
}