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

郑州做网站的公司哪些网站免费推广网站

郑州做网站的公司哪些,网站免费推广网站,个人网站放什么内容,电商如何推广初始化数据结构: 使用一个布尔数组 arr 来表示每个位置是否被占用。初始时所有位置均为 false(未占用)。使用一个 LinkedHashMap(命名为 queue)来记录最近的 R 操作的位置。这个结构可以保持插入顺序,方便后…
  • 初始化数据结构

    • 使用一个布尔数组 arr 来表示每个位置是否被占用。初始时所有位置均为 false(未占用)。
    • 使用一个 LinkedHashMap(命名为 queue)来记录最近的 R 操作的位置。这个结构可以保持插入顺序,方便后续处理。
  • 遍历输入字符串

    • 遍历每个字符,根据字符的类型(.LR)进行不同的处理:
      • .:表示空位,跳过。
      • L
        • 如果 queue 为空(没有 R),将当前位置之前的所有位置标记为占用(true)。
        • 如果 queue 不为空,处理最近的 R
          • queue 中获取并移除最近的 R 的位置。
          • 计算从这个 R 到当前 L 之间的影响区域,并根据位置关系决定标记的方式。具体来说,如果 LR 之间的距离是偶数,则需要跳过中间位置;如果是奇数,则可以直接标记所有位置为占用。
      • R:将当前索引加入 queue,以备后续处理。
  • 处理剩余的 R

    • 遍历完字符串后,如果 queue 中还有 R,取出第一个 R 的位置,将这个位置及其后所有位置标记为占用。
  • 计算未占用的位置

    • 遍历 arr 数组,统计未被占用的位置,并将它们的索引(1-based)加入结果队列。
  • 构造结果字符串

    • 如果没有未占用的位置,返回 "0"
    • 否则,构造结果字符串,格式为 "count:pos1,pos2,...",并返回。
import java.util.ArrayDeque;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Iterator;public class Main {public static String solution(int num, String data) {boolean[] arr = new boolean[data.length()];LinkedHashMap<Character, Integer> queue = new LinkedHashMap<>();for (int i = 0; i < data.length(); i++) {switch (data.charAt(i)) {case '.':break;case 'L':if (queue.isEmpty()) {for (int j = 0; j <= i; j++) {arr[j] = true;}} else {Iterator<Map.Entry<Character, Integer>> iterator = queue.entrySet().iterator();Map.Entry<Character, Integer> firstEntry = iterator.next(); // 获取第一个条目iterator.remove();boolean skipTwo = false;int top = firstEntry.getValue();int extra = (i + top) / 2;if ((i - top) % 2 != 0) {skipTwo = true;}for (int j = top; j <= i; j++) {if (skipTwo) {arr[j] = true;} else {if (j != extra) {arr[j] = true;}}}}break;case 'R':queue.put('R', i);break;}}// Check if the queue is not emptyif (!queue.isEmpty()) {// Retrieve and remove the first entryIterator<Map.Entry<Character, Integer>> iterator = queue.entrySet().iterator();Map.Entry<Character, Integer> firstEntry = iterator.next();iterator.remove(); // Pop the first entryif (firstEntry.getKey() == 'R') {int topValue = firstEntry.getValue();for (int j = topValue; j < arr.length; j++) {arr[j] = true; // Set all subsequent elements to true}}}int count = 0;ArrayDeque<Integer> result = new ArrayDeque<>();for (int i = 0; i < data.length(); i++) {if (!arr[i]) {count++;result.add(i + 1); // 1-based index}}if (count == 0) {return "0"; // All positions are filled}StringBuilder resultString = new StringBuilder(count + ":");for (int pos : result) {resultString.append(pos).append(",");}resultString.setLength(resultString.length() - 1); // Remove the last commareturn resultString.toString();}public static void main(String[] args) {// // You can add more test cases hereSystem.out.println(solution(14, ".L.R...LR..L..").equals("4:3,6,13,14"));System.out.println(solution(5, "R....").equals("0"));System.out.println(solution(1, ".").equals("1:1"));}
}

http://www.ds6.com.cn/news/99911.html

相关文章:

  • 省级建设网站seo研究中心培训机构
  • 做非法网站怎么盈利小说网站排名免费
  • 商品列表页面html模板seo网站推广的主要目的包括
  • 贵阳做网站 优帮云成都新站软件快速排名
  • 寺庙网站开发建设方案怎么样做推广
  • 网站付款接口这么做做个公司网站一般需要多少钱
  • 简洁手机导航网站模板下载安装关键词优化排名公司
  • 淘宝上网站建设好便宜百度站长工具官网
  • 三合一网站源码百度竞价推广开户费用
  • 菠菜网站的代理怎么做电工培训技术学校
  • 做网站设计用什么软件东莞网络排名优化
  • app网站制作要多少钱今天的病毒感染情况
  • 淮安哪个做网站好点淘宝直通车推广怎么收费
  • wordpress 多网站吗nba最新消息新闻
  • wordpress 验证密码搜索引擎优化技术有哪些
  • 深圳市公共资源交易中心官网合肥优化营商环境
  • 布吉网站建设网络公司的推广
  • 北京企业网站定制国家市场监管总局
  • 俄罗斯国际空间站青岛百度推广seo价格
  • 如何利用网站做推广站长之家素材
  • 网站建立的连接不安全会计培训班需要学多长时间
  • ssm可以做哪些网站列举网络推广的方式
  • 旺旺号查询网站怎么做整合网络营销
  • 婚恋网站女代我做彩票软文有哪几种类型
  • 上海网站建设 觉策动力网络seo外包
  • org网站开发seo技巧
  • 网站编程设计如何写备注上海seo推广方法
  • 城市文化建设的网站苏州百度快照优化排名
  • 设计网站都有什么作用是什么seo搜索引擎官网
  • 全自动网站制作源码网站开发需要哪些技术