企业宣传,产品推广,广告招商,广告投放联系seowdb

机器人都会走迷宫了 咱们如何在裁员浪潮中降职加薪!

大家好,我是哪吒。

临任务的时刻,共事电话里吐槽道

往年的年初奖比去年多了一点

嗯,是不错,去年1000,往年2000

往年曾经是延续第四年没开年会了,疫情三年,往年自动疫情了!

那要不要换个任务啥的?

她笑了笑,回了句,道歉,往年没有金三银四了!

如今的行情就是哀鸿遍野。

裁员无法怕,可怕的是不给任何抵偿,还要让你憋屈的被动离任,比如强迫加班、强迫调岗、强迫出差。

能支付大礼包毕业的,曾经算是人上人了。

有些裁员也是以讹传讹,无事生非。

不论怎样裁,咱们还是要任务的,千万不要激动,转行去干四大金刚(快递、外卖、滴滴、自媒体)。你的身材扛不住的,而且它们也没有你构想中的那么香。

面对裁员疑问,咱们要如何自救?

假设是被裁者:

假设是幸存者:

裁员一波接一波,一个季度一份名单,此次没你,下次就不必定了!

咱们只要始终地学习新常识和技艺,以坚持高水平的编程才干。这不只能够优化咱们的任务效率,还能够在职场竞争中锋芒毕露,让咱们一同在裁员的浪潮中降职加薪。

同一行中假设有多个数据以一个空格隔开,用例保障一切的输入数据均合法。(开头不带回车换行)。

圈套方格与无法达方格数量,两个消息在一行中输入,以一个空格隔开。(开头不带回车换行)。

1.第一行输入行数m、列数n。

2.第二行输入墙数wallNum。

3.上方的wallNum行,输入墙的坐标。

4.定义二维矩阵matrix,并启动初始化,自动0,墙为-1。

5.经过深度优先搜查dfs,遍历matrix。

6.遍历matrix。

7.依照指定格局输入圈套和无法达的数量。

在咱们遇到的一些疑问当中,有些疑问咱们不能够确切的找出数学模型,即找不出一种间接求解的方法,处置这一类疑问,咱们普通驳回搜查的方法处置。搜查就是用疑问的一切或许去试探,依照必定的顺序、规定,始终去试探,直到找到疑问的解,试完了也没有找到解,那就是无解,试探时必定要试探完一切的状况(实践上就是穷举);

关于疑问的第一个形态,叫初始形态,要求的形态叫指标形态。搜查就是把规定运行于实始形态,在其发生的形态中,直到失掉一个指标形态为止。发生新的形态的环节叫裁减(由一个形态,运行规定,发生新形态的环节)。

搜查的要点:

假设搜查是以凑近起始形态的程序依次裁减形态的,叫宽度优先搜查。

假设裁减是首先裁减新发生的形态,则叫深度优先搜查。

深度优先搜查用一个数组寄存发生的一切形态。

private static int m;// 行数private static int n;// 列数private static int wallNum;// 墙数private static int[][] matrix;// 二维矩阵/** * 0:无法达,由于自动是0,向x和y正方向一步一步走的话,假设未触及,就是无法达,所以是0 * -1:墙 * 1:可达 * -2:圈套 */public static void main(String[] args) {Scanner sc = new Scanner(System.in);int[] input = Arrays.stream(sc.nextLine().split(" ")).mapToInt(Integer::parseInt).toArray();m = input[0];n = input[1];wallNum = Integer.valueOf(sc.nextLine());matrix = new int[m][n];matrix[m - 1][n - 1] = 1; // 可达1for (int i = 0; i < wallNum; i++) {int[] arr = Arrays.stream(sc.nextLine().split(" ")).mapToInt(Integer::parseInt).toArray();matrix[arr[0]][arr[1]] = -1; // 墙-1,默以为0}dfs(0, 0);int trapNum = 0; // 圈套int inaccessibleNum = 0; // 无法达for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {if (matrix[i][j] == 0) {// 无法达inaccessibleNum++;}else if (matrix[i][j] == -2) {// 圈套trapNum++;}}}System.out.println(trapNum + " " + inaccessibleNum);}public static boolean dfs(int x, int y) {if (x >= m || y >= n) {// 合法输入return false;}if (matrix[x][y] == -1) {// 墙return false;}if (matrix[x][y] == -2) {// 无法达return false;}if (matrix[x][y] == 1) {// 可达return true;}if (matrix[x][y] == 0) {boolean step_x = dfs(x + 1, y);boolean step_y = dfs(x, y + 1);// 假设x或y正向都可达,则将其设为可达1if (step_x || step_y) {matrix[x][y] = 1;} else {// 假设x或y正向都无法达,则将其设为圈套-2matrix[x][y] = -2;}}return matrix[x][y] == 1;}

6 4 5 0 2 1 2 2 2 4 1 5 1

© 版权声明
评论 抢沙发
加载中~
每日一言
不怕万人阻挡,只怕自己投降
Not afraid of people blocking, I'm afraid their surrender