#4 помоему неплохо получилось. делю все на 2 прохода по N/2 индексы беру навстречу. 1 проход. считаю R и B ( и заменяю все на G. второй проход заменяю по левому индексу по счетчику все на R, по правому на B. G сами останутся правильно.