当前位置: 首页 > news >正文

请写出网站建设前期需要做的准备局域网 手机网站建设

请写出网站建设前期需要做的准备,局域网 手机网站建设,网页浏览器官方下载,提交网站收录文章目录 竞赛链接Q1#xff1a;6925. 故障键盘解法1——直接模拟解法2——双端队列 Q2#xff1a;6953. 判断是否能拆分数组#xff08;贪心#xff09;Q3#xff1a;2812. 找出最安全路径⭐解法1——多源BFS瓶颈路模型#xff1f;解法2——多源BFS 倒序枚举答案 并查… 文章目录 竞赛链接Q16925. 故障键盘解法1——直接模拟解法2——双端队列 Q26953. 判断是否能拆分数组贪心Q32812. 找出最安全路径⭐解法1——多源BFS瓶颈路模型解法2——多源BFS 倒序枚举答案 并查集TODO Q42813. 子序列最大优雅度⭐⭐⭐⭐⭐反悔贪心思路——反悔贪心代码相似题目列表LCP 30. 魔塔游戏堆贪心871. 最低加油次数堆贪心 成绩记录 竞赛链接 Q16925. 故障键盘 https://leetcode.cn/problems/faulty-keyboard/ 提示 1 s.length 100 s 由小写英文字母组成 s[0] ! i 解法1——直接模拟 遇到 ‘i’ 翻转已有的字符串其它字符直接添加即可。 class Solution {public String finalString(String s) {StringBuilder ans new StringBuilder();for (char ch: s.toCharArray()) {if (ch ! i) ans.append(ch);else ans.reverse();}return ans.toString();} }解法2——双端队列 用一个变量维护当前翻转了几次来决定新来的字符添加在开头还是结尾。 class Solution {public String finalString(String s) {int f 0;DequeCharacter dq new ArrayDeque();for (char ch: s.toCharArray()) {if (ch i) f;else {if (f % 2 0) dq.offerLast(ch);else dq.offerFirst(ch);}}StringBuilder ans new StringBuilder();for (char ch: dq) ans.append(ch);if (f % 2 1) ans.reverse();return ans.toString();} }Q26953. 判断是否能拆分数组贪心 https://leetcode.cn/problems/check-if-it-is-possible-to-split-array/ 提示 1 n nums.length 100 1 nums[i] 100 1 m 200 class Solution {public boolean canSplitArray(ListInteger nums, int m) {int n nums.size();if (n 1 || n 2) return true;for (int i 0; i n - 1; i) {if (nums.get(i) nums.get(i 1) m) return true;}return false;} }Q32812. 找出最安全路径⭐ https://leetcode.cn/problems/find-the-safest-path-in-a-grid/ 提示 1 grid.length n 400 grid[i].length n grid[i][j] 为 0 或 1 grid 至少存在一个小偷 解法1——多源BFS瓶颈路模型 第一遍 bfs 求出各个位置的安全系数。 第二遍 bfs将各个位置的安全系数更新为从终点开始的路径上的较小值。 class Solution {int[] dx new int[]{-1, 0, 1, 0}, dy new int[]{0, -1, 0, 1};public int maximumSafenessFactor(ListListInteger grid) {int n grid.size();if (grid.get(0).get(0) 1 || grid.get(n - 1).get(n - 1) 1) return 0;int[][] g new int[n][n], safe new int[n][n];Queueint[] q new LinkedList();// 第一遍多源bfs 求出各个位置的安全系数for (int i 0; i n; i) {for (int j 0; j n; j) {if (grid.get(i).get(j) 1) {g[i][j] 1;q.offer(new int[]{i, j});}}}while (!q.isEmpty()) {int sz q.size();for (int i 0; i sz; i) {int[] cur q.poll();int x cur[0], y cur[1];for (int k 0; k 4; k) {int nx x dx[k], ny y dy[k];if (nx 0 ny 0 nx n ny n g[nx][ny] 0) {q.offer(new int[]{nx, ny});g[nx][ny] g[x][y] 1;}}}}// 第二遍bfs 从终点出发求出各个路径的最小安全系数q.offer(new int[]{n - 1, n - 1});safe[n - 1][n - 1] g[n - 1][n - 1];while (!q.isEmpty()) {int[] cur q.poll();int x cur[0], y cur[1];for (int k 0; k 4; k) {int nx x dx[k], ny y dy[k];if (nx 0 ny 0 nx n ny n) {int nsafe Math.min(g[nx][ny], safe[x][y]);if (nsafe safe[nx][ny]) {safe[nx][ny] nsafe;q.offer(new int[]{nx, ny});}}}}return safe[0][0] - 1;} }解法2——多源BFS 倒序枚举答案 并查集TODO https://leetcode.cn/problems/find-the-safest-path-in-a-grid/solutions/2375565/jie-jin-on2-de-zuo-fa-duo-yuan-bfsdao-xu-r5um/ 在这里插入代码片Q42813. 子序列最大优雅度⭐⭐⭐⭐⭐反悔贪心 https://leetcode.cn/problems/maximum-elegance-of-a-k-length-subsequence/ 提示 1 items.length n 10^5 items[i].length 2 items[i][0] profiti items[i][1] categoryi 1 profiti 10^9 1 categoryi n 1 k n 思路——反悔贪心 https://leetcode.cn/problems/maximum-elegance-of-a-k-length-subsequence/solutions/2375128/fan-hui-tan-xin-pythonjavacgo-by-endless-v2w1/ 代码 核心的思想是x y^2枚举 y^2的值并使得 x 在该枚举值下的值最大就得到了该枚举值下的最大值。比较得到的所有的最大值就是最终结果了。 class Solution {public long findMaximumElegance(int[][] items, int k) {// 把利润从大到小排序Arrays.sort(items, (a, b) - b[0] - a[0]);long ans 0, totalProfit 0;SetInteger vis new HashSet();DequeInteger duplicate new ArrayDeque();for (int i 0; i items.length; i) {int profit items[i][0], category items[i][1];if (i k) {totalProfit profit;if (!vis.add(category)) {// 如果已经有这个类别了就把当前的放在栈顶duplicate.push(profit);}} else if (!duplicate.isEmpty() vis.add(category)) {// 如果当前栈不为空且当前种类没有出现过totalProfit profit - duplicate.pop(); // 修改利润}ans Math.max(ans, totalProfit (long) vis.size() * vis.size());}return ans;} }相似题目列表 做完之后感觉这两个题目更相似一些但是和反悔贪心关系不是那么大。 LCP 30. 魔塔游戏堆贪心 https://leetcode.cn/problems/p0NxJO/description/ 提示 1 nums.length 10^5 -10^5 nums[i] 10^5 先检查是否有答案存在。 如果有答案存在就将已经枚举到的负值放入堆中每次 s 0 时就取出最小的那个负数移动到末尾即可。 class Solution {public int magicTower(int[] nums) {if (Arrays.stream(nums).sum() 0) return -1;int ans 0;// pq中存放目前遇到的负数PriorityQueueInteger pq new PriorityQueue();long s 1;for (int x: nums) {s x;if (x 0) pq.offer(x);while (s 0) {// 每次把最小的移动到最后面去s - pq.poll();ans;}}return ans;} }871. 最低加油次数堆贪心 https://leetcode.cn/problems/minimum-number-of-refueling-stops/ 提示 1 target, startFuel 10^9 0 stations.length 500 1 positioni positioni1 target 1 fueli 10^9 用堆维护目前可以加的油但是先不加等到走不动了再一个个加。 class Solution {public int minRefuelStops(int target, int startFuel, int[][] stations) {if (startFuel target) return 0;Arrays.sort(stations, (x, y) - x[0] - y[0]); // 按照位置排序PriorityQueueInteger pq new PriorityQueueInteger((x, y) - y - x);int p startFuel, ans 0;for (int i 0; i stations.length; i) {while (p stations[i][0] !pq.isEmpty()) {p pq.poll();ans;}if (p stations[i][0]) break;if (p target) return ans;pq.offer(stations[i][1]);}while (p target !pq.isEmpty()) {p pq.poll();ans;}return p target? -1: ans;} }成绩记录 T3 借助了一些些外力。 上小分。
http://www.dnsts.com.cn/news/44291.html

相关文章:

  • 怎么查看网站是否做静态化处理境外公司注册
  • 网页设计与网站建设书商贸有限公司经营范围
  • 南通网站制作外包南昌网站建设公司市场
  • 没学过计算机开始学做网站qq邮箱在线登录网页版
  • 百度网站空间html菜鸟工具
  • 肇庆北滘网站设计可以做网站的编程有什么
  • 兰州市网站建设网站被墙了什么意思
  • 网站 php .net手机网站建设机构
  • 企业网站可以免费做吗feed wordpress
  • 佛山网站制作流程wordpress博客空间
  • 网络公司如何建网站化妆品商城网站建设
  • 设计师一般是什么学历邢台seo技术
  • qq临时会话网站c语言软件开发和网站开发区别
  • 网站技术方案说明优是是什么网站
  • 站长平台工具建设网站通过什么赚钱
  • 本地网站模板修改如何设立网站
  • 小学网站建设情况汇报旅业认证二维码有什么用
  • 给实体店老板做的网站网页制作考证视频
  • 建设部网站统计m开头的网站建设公司
  • 南阳做网站许昌市网站建设
  • 跟我学做纸艺花网站有帮忙做网站的吗
  • 优质的南昌网站建设女和男做的视频网站
  • 服装网站建设教程WordPress主题里的AD
  • 广州市规划建设局网站花多少钱能把网站做到页面
  • 清远市建设局官方网站提供网站建设的功能
  • 有网站开发专业吗wordpress博客主题acg
  • 淄博网站排名外包软件开发公司账务处理
  • 如何推广公司网站学校学不到网站建设
  • 所以免费爱做网站网站开发素材包
  • 建设厅注册中心网站首页优秀广告案例分析