字节跳动22号第四题--两次遍历满足约束

import java.util.Arrays;

import java.util.Scanner;

public class T4 {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

int n = scanner.nextInt();

int m = scanner.nextInt();

int[] con = new int[n];

Arrays.fill(con, Integer.MAX_VALUE);

for (int i = 0; i < m; i++) {

int a = scanner.nextInt();

int b = scanner.nextInt();

con[a] = b;

}

int[] dp = new int[n];

dp[0] = 0;

for (int i = 1; i < n; i++) {

dp[i] = Math.min(dp[i - 1] + 1, con[i]);

}

for (int i = n - 2; i > 0; i--) {

dp[i] = Math.min(dp[i + 1]+ 1, dp[i]);

}

int ans = Arrays.stream(dp).max().getAsInt();

System.out.println(ans);

}

}

全部评论

相关推荐

07-22 11:53
门头沟学院 Java
终于有一个保底的offer了,但感觉是白菜价
北凝a:我想问问,提前批的offer 有问你啥时候到岗吗,如果你还想找其他的怎么办
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-25 17:13
点赞 评论 收藏
分享
Twilight_m...:还是不够贴近现实,中关村那块60平房子200万怎么可能拿的下来,交个首付还差不多
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务