lcpBi99 最小和分割 方法一:HashMap 12345678910111213141516171819202122class Solution { public int splitNum(int num) { String s = String.valueOf(num); int n = s.length(); int[] cnt = new int[10]; for (int i = 0; i < s.length(); ++i) cnt[s.charAt(i) - '0']++; StringBuilder sb1 = new StringBuilder(), sb2 = new StringBuilder(); boolean flag = false; for (int i = 0; i < 10; ++i) { while (cnt[i]-- > 0) { if (flag) sb2.append(i); else sb1.append(i); flag = !flag; } } System.out.println(); return Integer.parseInt(sb1.toString()) + Integer.parseInt(sb2.toString()); }} 统计染色格子数 方法一:等差数列 12345678910111213141516class Solution { static long[] sum = new long[100002]; static { sum[1] = 1; int diff = 4; for (int i = 2; i < sum.length; ++i) { sum[i] = sum[i - 1] + diff; diff += 4; } } public long coloredCells(int n) { return sum[n]; }} 统计将重叠区间合并成组的方案数 方法一:贪心 + 快速幂 1234567891011121314class Solution { static int MOD = (int) 1e9 + 7; public int countWays(int[][] ranges) { Arrays.sort(ranges, (o1,o2)->o1[0] - o2[0]); int res = 2, r = ranges[0][1]; for (int[] range : ranges) { if (range[0] > r) res = res * 2 % MOD; r = Math.max(r, range[1]); } return res; }} 统计可能的树根数目 方法一: 1 Contest > LCP #力扣杯 lcpBi99 https://leopol1d.github.io/2023/08/23/lcpBi99/ 作者 Leopold 发布于 2023年8月23日 许可协议 lcp333 上一篇 lcp359 下一篇 Please enable JavaScript to view the comments