关注
public static void main(String[] args) { System.out.println(fun2(new int[2])); Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int k = scanner.nextInt(); int[] array = new int[n]; for (int i = 0; i < n; i++) { array[i] = scanner.nextInt(); } Arrays.sort(array); int count = 0; Map<Integer, Integer> map = new HashMap<>(); for (int i = 0; i < n; i++) { int start = array[i]; for (int j = i; j < n; j++) { if ((array[j] - array[i]) > k) { break; } if ((array[j] - array[i]) == k) { map.put(array[i], array[j]); } } } System.out.println(map.keySet().size()); } // 双指针 也可以解决 public static int fun2 (int[] a) { a = new int[] {1,1,2,2,2,2,2,3,3,3,3,4}; int k = 1; Set<Integer> set = new HashSet<>(); for (int i : a) { set.add(i); } Integer[] aa = set.toArray(new Integer[1]); int n = aa.length; int r = 0; int res = 0; for (int l = 0; l < n; l++) { while (r < n && aa[r] - aa[l] < k) { r++; // } if (r >= n) { break; } if (aa[r] - aa[l] == k) { res++; } } return res; }
查看原帖
点赞 2
相关推荐
05-30 15:13
安徽财经大学 C++ 点赞 评论 收藏
分享
点赞 评论 收藏
分享
04-27 15:01
早稲田大学 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 我的实习日记 #
4144760次浏览 33211人参与
# 你投了多少家公司?进展是___ #
252471次浏览 1489人参与
# 第3届现代汽车Code Faster急速编程挑战赛 #
26940次浏览 480人参与
# 秋招投递记录 #
429705次浏览 3317人参与
# 你投递的公司有几家约面了? #
175124次浏览 1048人参与
# 城市生存手册 #
1259次浏览 19人参与
# 今年形式下双非本找得到工作吗 #
339932次浏览 1797人参与
# 重来一次,你会对开始求职的自己说 #
55442次浏览 517人参与
# 秋招提前批,你开始投了吗 #
772542次浏览 8500人参与
# 实习返校后,你的精神状态是__? #
47759次浏览 174人参与
# 你认为小厂实习有用吗? #
153307次浏览 809人参与
# 通信/硬件求职避坑tips #
179695次浏览 1177人参与
# 产品实习,你更倾向大公司or小公司 #
234864次浏览 2169人参与
# 这个工作能去吗 #
184186次浏览 959人参与
# 为了找工作你投递了多少公司? #
122426次浏览 773人参与
# 聊聊你的职场新体验 #
363890次浏览 1939人参与
# 我的租房踩坑经历 #
231857次浏览 1338人参与
# 实习生的生存小技巧 #
42182次浏览 366人参与
# 如何看待应届生身份? #
261331次浏览 2364人参与
# 你找工作想离家近 or 离家远? #
55228次浏览 403人参与
# 运营人的第一份offer应该如何选 #
273814次浏览 1375人参与


帆软软件公司氛围 105人发布