Topcoder SRM 516 div2 easy "NetworkXZeroOne"
なんかoとxと?を含む文字列が与えられるのでoとxが交互になるように?をoかxに置換した文字列を求める.
答えは絶対あるらしいのでなんかxかoが見つかったらそれを起点にして前後に交互に埋めたらいいと思って書いた.
public class NetworkXZeroOne { public String reconstruct(String message) { char[] cs = message.toCharArray(); for (int i = 0; i < cs.length; ++i) { if (cs[i] != '?') { boolean b = cs[i] != 'o'; for (int j = i - 1; j >= 0; --j) { cs[j] = b ? 'o' : 'x'; b = !b; } b = cs[i] != 'o'; for (int j = i + 1; j < cs.length; ++j) { cs[j] = b ? 'o' : 'x'; b = !b; } break; } } return new String(cs); } }