Flower Planting With No Adjacent
这题好tricky啊, 上眼立刻觉得是颜色问题, 难道是dfs+剪枝?, 试了好久感觉不应该那么难, 打开答案才看到, 原来3度4个颜色, 不就是正好能满配的么. 下面是抄leetcode的一个答案写的.
class Solution {
public int[] gardenNoAdj(int n, int[][] E) {
int[] R = new int[n];
Arrays.fill(R, 1);
boolean f;
do {
f = false;
for (int[] e : E) {
int u = Math.min(e[0], e[1]) - 1;
int v = Math.max(e[0], e[1]) - 1;
if (R[u] == R[v]) {
f = true;
R[v] = R[u] == 4 ? 1 : R[u] + 1;
}
}
} while (f);
return R;
}
}