投递字节跳动等公司10个岗位 >
0 点赞 评论 收藏
分享
搬砖ing呢:原来也想的是建树然后中序输出看是否有序,事后问了acm小伙伴他说直接遍历看2n+1和2n+2是不是都比他小就行了😂😂😂
投递快手等公司10个岗位 >
0 点赞 评论 收藏
分享
十六夜丶喵夜:平时也就算了,等offer的时候,当当当,惊不惊喜?刺不刺激?是我!还是我!就特么想砸手机。
投递前程无忧等公司10个岗位 >
0 点赞 评论 收藏
分享
2018-09-22 12:28
中国石油大学(北京) Java thegrandbo9:哈哈哈,屏了一个,又是我。再屏一个,还是我。再屏一个,我又来了。就是这么流弊
投递智联招聘等公司10个岗位 >
0 点赞 评论 收藏
分享
投递迅雷等公司10个岗位 >
0 点赞 评论 收藏
分享
freeshi:还有螺柱说的求孤岛的,我刚开始用了DFS,没加DP,过了80,提示的错误也是数组越界,然后我猜可能是栈溢出,在本地输入了一个1000X1000全是1的数组,结果溢出了,然而时间所剩无几,没有将DFS改为循环,完了写了循环的方式,可以解决1000X1000全是1的情况,但是不知道能不能真的AC,也有人说是第二个的此时用例还是初始化有问题,那可能是吧,下边是我循环的代码 import java.util.ArrayDeque;
import java.util.Scanner;
/*
4
1 0 0 0
0 0 0 0
0 0 0 1
0 0 0 0
*/
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String line = in.nextLine();
int N = Integer.parseInt(line);
String[] split = null;
boolean stand[][] = new boolean[N][N];
boolean flag[][] = new boolean[N][N];
for (int i = 0; i < N; i++) {
line = in.nextLine();
split = line.split(" ");
for (int j = 0; j < N; j++) {
if (split[j].equals("1"))
stand[i][j] = true;
}
}
System.out.println(findTeam(N, stand));
}
public static int findTeam(int N, boolean stand[][]) {
boolean flag[][] = new boolean[N][N];
ArrayDeque<Integer[]> deque = new ArrayDeque<>();
int ret = 0;
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
if (stand[i][j] && !flag[i][j]) {
deque.offer(new Integer[] { i, j });
flag[i][j] = true;
while (!deque.isEmpty()) {
Integer[] site = deque.poll();
int m = site[0];
int n = site[1];
if (m > 0 && stand[m - 1][n] && !flag[m - 1][n]) {
deque.offer(new Integer[] { m - 1, n });
flag[m - 1][n] = true;
}
if (n > 0 && stand[m][n - 1] && !flag[m][n - 1]) {
deque.offer(new Integer[] { m, n - 1 });
flag[m][n - 1] = true;
}
if (n < N - 1 && stand[m][n + 1] && !flag[m][n + 1]) {
deque.offer(new Integer[] { m, n + 1 });
flag[m][n + 1] = true;
}
if (m < N - 1 && stand[m + 1][n] && !flag[m + 1][n]) {
deque.offer(new Integer[] { m + 1, n });
flag[m + 1][n] = true;
}
}
ret++;
}
}
}
return ret;
}
}
投递字节跳动等公司10个岗位 >
0 点赞 评论 收藏
分享
投递好未来等公司10个岗位 >
0 点赞 评论 收藏
分享
投递欢聚集团等公司10个岗位 >
0 点赞 评论 收藏
分享
关注他的用户也关注了: