<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>rqdmap | blog</title>
    <link>https://rqdmap.top/</link>
    <description>Recent content on rqdmap | blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-cn</language><atom:link href="https://rqdmap.top/index.xml" rel="self" type="application/rss+xml" /> 
    <item>
      <title>在 OBS 中通过采集卡调试无显示器主机</title>
      <link>https://rqdmap.top/posts/e5-on-obs/</link>
      <pubDate>Thu, 29 Jan 2026 21:28:24 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/e5-on-obs/</guid>
      <description>&lt;p&gt;没错, OBS 中也可以使用 Linux 系统! 但这不是什么类似于在 PDF 中执行 Linux 的高端玩意, 只是因为手头有一台捡垃圾拼来的台式机, 但没有适配 VGA 接口的显示屏幕, 唯一正在使用的带鱼屏也因为屏幕自身问题无法支持默认分辨率与刷新率输出..&lt;/p&gt;
&lt;p&gt;探索后发现可以通过采集卡的方式将 VGA 信号走 USB 接口输出到 OBS 中作为信号源, 这样就可以借助另外的一块笔记本屏幕查看视频信号了&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2025软考高级架构师-考试总结</title>
      <link>https://rqdmap.top/posts/2025-ruankao-architecture/</link>
      <pubDate>Tue, 16 Dec 2025 16:52:17 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/2025-ruankao-architecture/</guid>
      <description>&lt;p&gt;本文回顾了 2025 年秋季软考高级架构师的备考与考试经历. 文章分享了通过 Anki 快速刷客观题的经验, 探讨了案例分析和论文的准备策略, 并反思了因论文准备不足导致的失利. 此外还分享了考试当天的体验, 记录了在备考过程中对 PDF 标注、本地知识库管理等工具的探索, 以及对明年继续冲刺的展望.&lt;/p&gt;</description>
    </item>
	    
    <item>
      <title>Magisk 隐藏应用残留清理方法</title>
      <link>https://rqdmap.top/posts/uninstall-hidden-magisk/</link>
      <pubDate>Thu, 03 Jul 2025 15:25:38 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/uninstall-hidden-magisk/</guid>
      <description>&lt;p&gt;OTA 升级后, 使用随机包名隐藏的 Magisk 应用可能因权限丢失而无法正常卸载, 同时阻止新 Magisk 正确识别 Root 状态. 本文介绍通过 ADB 命令定位和清除此类残留应用的方法.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>京城碎笔</title>
      <link>https://rqdmap.top/posts/graduate-school-summary/</link>
      <pubDate>Sun, 01 Jun 2025 20:57:52 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/graduate-school-summary/</guid>
      <description>&lt;p&gt;人对时间的感受确实是对数的. 回首望去, 仿佛还没有干些什么了不起的事情, 就在不经意间的一日三餐、日升日落之间度过了在北京的三年. 但细细数来, 又好像多少还是做了一些事情, 只是总感觉是很瞬间的事情, 既感受不到时间跨度的存在, 也难以回忆起当时丰富的心境. 事情只是一件一件发生, 情感也只是此起彼伏地变化着. 每当想要记录一些什么时, 又像是费尽心思探赜索隐一样, 努力回忆彼时彼刻的心情, 也是一件劳苦事情. 只是在北京上学的这三年, 也恍惚间就结束了, 这期间还是经历到了很多不同事情、学习到了一些好玩的技术, 不写点什么总感觉就会稀里糊涂忘记, 因此还是努力记录一些什么.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>SSH 隧道管理与安全加固</title>
      <link>https://rqdmap.top/posts/ssh-tunnel/</link>
      <pubDate>Thu, 10 Apr 2025 19:37:52 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/ssh-tunnel/</guid>
      <description>&lt;p&gt;本文详细描述了基于 SSH 隧道的端口转发解决方案, 替代了原有的 frp 方案. 通过 systemd 模板单元和辅助脚本, 实现了动态 IP 与静态 IP 并存的管理方式, 并将隧道配置与具体的执行过程解耦. 文章提供了 SSH 反向隧道的配置示例, 并探讨了安全加固措施, 包括 iptables 限流和 sshd 配置调整, 以应对公网上的暴力破解尝试.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>QEMU 中实现基于 UEFI Secure Boot 与 TPM 的 GRUB 可信引导</title>
      <link>https://rqdmap.top/posts/secureboot-with-tpm/</link>
      <pubDate>Tue, 18 Mar 2025 21:53:19 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/secureboot-with-tpm/</guid>
      <description>&lt;p&gt;可信启动通过 TPM 的完整性度量机制扩展 UEFI 安全启动的签名验证能力，形成从硬件信任根到操作系统的完整信任链. 本文将探讨如何在 QEMU 虚拟环境中实现基于 UEFI Secure Boot 与 TPM 的 GRUB 可信引导过程, 包括原理解析、环境搭建、配置方法及验证测试, 为读者提供一个可复现的技术实践指南, 帮助深入理解可信计算的基础机制.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>从 Alacritty 到 Wezterm: 解决旗帜 Emoji 渲染问题</title>
      <link>https://rqdmap.top/posts/linux-font-config/</link>
      <pubDate>Wed, 05 Mar 2025 16:59:29 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/linux-font-config/</guid>
      <description>&lt;p&gt;本文针对 Linux 环境下终端 Emoji 符号渲染异常问题(如区域指示符无法正确显示为区域的旗帜), 从字体配置与终端工具两个角度展开分析. 通过排查 Alacritty 的字体回退机制、尝试合并多字体方案, 最终定位到 Unicode 版本兼容性问题, 通过切换至 Wezterm 终端并配置 Unicode 版本正确渲染国旗 Emoji. 文中记录了在尝试过程中的字体选择(Iosevka、思源黑体、Sarasa 更纱黑)、终端对比(Alacritty 与 Wezterm)及配置实现过程, 为无桌面环境下的 Linux 字体管理提供实践参考.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Draw.io 自动化中英文字体混排方案</title>
      <link>https://rqdmap.top/posts/dual-font-in-drawio/</link>
      <pubDate>Tue, 25 Feb 2025 19:17:18 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/dual-font-in-drawio/</guid>
      <description>&lt;p&gt;&lt;b&gt;&lt;font color=&#34;red&#34;&gt;update:&lt;/font&gt;&lt;/b&gt; 经 xueaohui 分享, 原生 Draw.io 可以支持中英文混排, 将每个字体用单引号分隔, 字体间用逗号连接即可, 例如: &lt;code&gt;&#39;Times New Roman&#39;,&#39;Simsun&#39;&lt;/code&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>ELF 文件结构与分析</title>
      <link>https://rqdmap.top/posts/elf-structure/</link>
      <pubDate>Tue, 18 Feb 2025 17:22:52 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/elf-structure/</guid>
      <description>&lt;p&gt;本文主要整理与学习了 ELF 文件的基本格式, 使用 &lt;code&gt;readelf&lt;/code&gt;, &lt;code&gt;gdb&lt;/code&gt;, &lt;code&gt;objdump&lt;/code&gt; 等工具实际分析了 ELF 部分节区的字段细节, 但受于篇幅限制, 未对与 ELF 关联甚深的程序动静态链接、加载过程进行深入分析, 因此本文仅作为 ELF 基本结构的一个基本介绍与入门.&lt;/p&gt;</description>
    </item>
	          
    <item>
      <title>Neovim 打造 Java8 开发环境</title>
      <link>https://rqdmap.top/posts/neovim-with-java8/</link>
      <pubDate>Fri, 19 Jul 2024 22:54:21 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/neovim-with-java8/</guid>
      <description>&lt;p&gt;这是一篇一看标题就很邪教的文章, 尽管拥有了 LSP 加持的 Neovim 处理大部分其他主流语言的项目都是游刃有余, 可是很难想象会有人愿意在 Java EE 开发(国内可以认为等价于 Spring 生态)中使用它, 尤其是项目本身极有可能具有沉重历史包袱而不得不使用的古老的 Java8..&lt;/p&gt;
&lt;p&gt;本文将说明我在基于 Neovim 开发 Spring 项目时的一些粗浅尝试与配置技巧.&lt;/p&gt;</description>
    </item>
	    
    <item>
      <title>nvim-cmp 支持前缀匹配优先的补全</title>
      <link>https://rqdmap.top/posts/kmp_in_lua/</link>
      <pubDate>Fri, 19 Apr 2024 20:53:39 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/kmp_in_lua/</guid>
      <description>&lt;p&gt;在我的 Neovim 配置中, 一直使用的是 nvim-cmp 作为补全引擎, 由于其默认支持模糊查找, 因而补全列表中可能会出现前缀匹配优先级不如子序列的乱序问题, 举一个例子:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;补全候选项中有 abc_variable 和 xaxbx 这两个词&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;输入 &lt;code&gt;ab&lt;/code&gt;, nvim-cmp 根据传入的比较函数进行逐个比较与排序; 但由于默认支持模糊查找, 且官方的补全函数中貌似没有前缀匹配优先的规定, 而我自己很合理地又添加了一个根据长度排序的比较函数, 因而在补全列表中, 子序列 &lt;code&gt;xaxbx&lt;/code&gt; 反而会获得更高的优先级出现在第一个, 这是极为不合理的.&lt;/p&gt;</description>
    </item>
	          
    <item>
      <title>2023 年度总结</title>
      <link>https://rqdmap.top/posts/2023-summary/</link>
      <pubDate>Thu, 04 Jan 2024 23:58:04 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/2023-summary/</guid>
      <description>&lt;p&gt;尽管 2023 年不太特殊, 甚至容易发现不是素数(7*17*17), 不过对我个人而言 2023 是经历了许多、学习了许多的一年, 因此考虑做一个年度的自省与总结, 以期留下一些结构化的记忆以供后来者翻阅.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Python 进阶技巧: 类与继承</title>
      <link>https://rqdmap.top/posts/class_in_python/</link>
      <pubDate>Thu, 04 Jan 2024 23:16:51 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/class_in_python/</guid>
      <description>&lt;p&gt;本文主要介绍有关 Python 中类(class)与继承(inheritance)的一些高级使用知识与技巧, 包括:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;与类相关的若干内置函数&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;多继承下的 MRO 序列与 C3 序列化方法&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;super 类的使用&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;魔术方法与类的实例化过程&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
	  
    <item>
      <title>实用Linux桌面系统定制化方案</title>
      <link>https://rqdmap.top/posts/rqdmap-linux/</link>
      <pubDate>Sun, 03 Dec 2023 21:42:56 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/rqdmap-linux/</guid>
      <description>&lt;p&gt;前前后后折腾自己使用的这套Linux桌面系统也有一年多的时间了, 但是由于其中涉及的事务纷繁细琐, 因而一直没有专门整理过一篇内容对其做系统的介绍. 不过由于这个周末又重构了之前的一套账单处理工具和一些常用脚本, 一下子便感觉到目前系统和功能服务已经愈发复杂起来了, 可以考虑对其做一个简单的介绍以便更好的传教(不是)&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Android微信记录备份方案</title>
      <link>https://rqdmap.top/posts/wechat-dump/</link>
      <pubDate>Mon, 20 Nov 2023 00:44:03 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/wechat-dump/</guid>
      <description>&lt;p&gt;在还没有解锁root时, 我偶尔便会闲来无事查查看微信的用户记录导出方案, 一些方案是基于Windows的聊天记录解密, 如: 

  
    
  

&lt;a href=&#34;https://saucer-man.com/information_security/1038.html&#34; class=external-link &gt;windows取证之导出微信&amp;amp;QQ聊天记录&lt;/a&gt;, 还有一些是基于IOS系统的Itunes来做导出. 总的来说都不是很满足需求, 基于Windows的方案一来看评论说只能解密当前的缓存数据, 除非每几天登陆一次电脑微信不然数据就不完整, 另外常用的设备也不会是windows而是安卓, 而Itunes的更不说了, 我也没有一台适合当作中转站的IPhone系列.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Pixel7 Root 解锁与折腾小记</title>
      <link>https://rqdmap.top/posts/pixel/</link>
      <pubDate>Wed, 15 Nov 2023 23:36:02 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/pixel/</guid>
      <description>&lt;p&gt;本文将说明 Pixel Root 解锁与OTA的恢复方式, 并记录一番在折腾过程中踩过的坑, 以供后续查阅.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;tl-dr-如何恢复root&#34;&gt;TL; DR 如何恢复Root?&lt;/h2&gt;
&lt;p&gt;通常情况下, Pixel 自动推送的更新总是会覆盖掉 Root, 这边将简洁地给出如何恢复 Root 的过程以供查阅, 全部操作过程应当不超过15分钟.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;font color=&#34;red&#34;&gt;因为是恢复root, 因而这里将不介绍adb工具套件的获取、bootloader的解锁等过程&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;</description>
    </item>
	        
    <item>
      <title>Mac(x86派)的废物再利用</title>
      <link>https://rqdmap.top/posts/mac%E6%B4%BE/</link>
      <pubDate>Sat, 09 Sep 2023 19:48:33 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/mac%E6%B4%BE/</guid>
      <description>&lt;p&gt;手头有一个退下来的mbp, 是老版本因而搭载的还是x86的CPU, 同时由于电源被我通过拓展坞充了次电而弄坏过, 因而一旦断电会光速关机.. 加上mbp真的是用到后面(大概4年)越用越卡, 让人怀疑macos是不是搞了什么鬼或怎么样.. 总之这台机子不太能当作主力机了, 退下来后也没怎么用过, 装了个windows但是用起来也是卡卡的, 前阵子拿来实验室企图当个服务器用, ntr上了个archlinux后但是也不知道拿来做什么, 正巧最近发现主力机的ssd/文件系统可能有问题, 因而考虑拿mbp来当一个x86派使用, 做做备份或者其他一些什么事情.&lt;/p&gt;</description>
    </item>
	    
    <item>
      <title>Rust项目结构与测试</title>
      <link>https://rqdmap.top/posts/rust%E9%A1%B9%E7%9B%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E6%B5%8B%E8%AF%95/</link>
      <pubDate>Wed, 06 Sep 2023 16:05:50 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/rust%E9%A1%B9%E7%9B%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E6%B5%8B%E8%AF%95/</guid>
      <description>&lt;p&gt;由于

  
    
  

&lt;a href=&#34;https://github.com/rqdmap/rust-in-competitive-programming&#34; class=external-link &gt;rqdmap/rust-in-competitive-programming&lt;/a&gt;项目冉冉升起, 希望对代码更加有条理地进行维护和组织, 因而学习一下cargo中有关项目, 包, 模块, 以及测试的一些内容, 做一个简单够用的知识学习与整理.&lt;/p&gt;
&lt;p&gt;&lt;del&gt;实际上是项目代码写了不少了, 整体结构也划分好了, 再来补了完善了这篇博客; 因为大概喜欢写测试的技术人员不多吧:/&lt;/del&gt;&lt;/p&gt;</description>
    </item>
	        
    <item>
      <title>不安全Rust: unsafe编程</title>
      <link>https://rqdmap.top/posts/rust-unsafe/</link>
      <pubDate>Tue, 22 Aug 2023 21:01:26 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/rust-unsafe/</guid>
      <description>&lt;p&gt;在

&lt;a href=&#34;https://rqdmap.top/posts/rcore2/&#34;&gt;rCore-OS: 批处理系统 - rqdmap | blog&lt;/a&gt;初次见到了&lt;code&gt;unsafe&lt;/code&gt;的相关代码, 当时并未系统学习, 只是草草了解, 这里补上相关的内容知识.
Rust编译器提供了强大的编译期安全保障, 不过其仍然为我们提供了unsafe关键字, 供我们写一些 &amp;ldquo;不安全的&amp;rdquo; Rust黑魔法.&lt;/p&gt;
&lt;h2 id=&#34;unsafe简介&#34;&gt;unsafe简介&lt;/h2&gt;
&lt;p&gt;为什么会有unsafe的需求?&lt;/p&gt;</description>
    </item>
	        
    <item>
      <title>Rust中的智能指针</title>
      <link>https://rqdmap.top/posts/rust%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88/</link>
      <pubDate>Tue, 01 Aug 2023 16:56:40 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/rust%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88/</guid>
      <description>&lt;p&gt;通常说来, 指针是一个包含了内存地址的变量, 而内存地址引用/指向了另外的数据.&lt;/p&gt;
&lt;p&gt;在Rust中, 最常见的指针类型是&lt;strong&gt;引用&lt;/strong&gt;, 其借用其他的变量的值, 除了指向某个值以外就没有其他的功能了. 没有性能损耗, 是Rust中使用最多的指针.&lt;/p&gt;
&lt;p&gt;Rust中的智能指针则相比于一般指针更加复杂, 其中包含诸如长度、容量、元信息等额外信息. 相比于引用会借用数据, 智能指针还能拥有其指向的数据, 然后再向他人提供服务. &lt;code&gt;String&lt;/code&gt;和&lt;code&gt;Vec&lt;/code&gt;都是常见的智能指针.&lt;/p&gt;</description>
    </item>
	    
    <item>
      <title>rCore-OS: 批处理系统</title>
      <link>https://rqdmap.top/posts/rcore2/</link>
      <pubDate>Wed, 26 Jul 2023 19:29:04 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/rcore2/</guid>
      <description>&lt;div class=&#34;cblock-warn cblock&#34;&gt;
  &lt;div class=&#34;cblock-logo cblock-warn-logo&#34;&gt;&lt;/div&gt;
  &lt;div class=&#34;cblock-warn-title cblock-title&#34;&gt;
    &lt;b&gt;系列文章&lt;/b&gt;
  &lt;/div&gt;
  &lt;div class=&#34;cblock-body&#34;&gt;
&lt;p&gt;

&lt;a href=&#34;https://rqdmap.top/posts/rcore/&#34;&gt;rCore操作系统实践 - rqdmap | blog&lt;/a&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;本章主要目的为设计和实现支持批处理操作的OS, 其相比于上一节的库OS而言, 主要的不同在于:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;OS自身运行在内核态; 支持其他应用运行在用户态并发出系统调用&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;一个接一个的运行不同的应用程序&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;为了实现这些目的, 本章节需要做的事情分为:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;调整应用程序, 使其能够发出系统调用; 操作系统提供额外的功能支持应用程序的执行, 包括但不限于&lt;code&gt;sys_write&lt;/code&gt;, &lt;code&gt;sys_exit&lt;/code&gt;等具体的系统调用功能.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>rCore-OS: 基本执行环境</title>
      <link>https://rqdmap.top/posts/rcore1/</link>
      <pubDate>Mon, 24 Jul 2023 19:30:54 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/rcore1/</guid>
      <description>&lt;div class=&#34;cblock-warn cblock&#34;&gt;
  &lt;div class=&#34;cblock-logo cblock-warn-logo&#34;&gt;&lt;/div&gt;
  &lt;div class=&#34;cblock-warn-title cblock-title&#34;&gt;
    &lt;b&gt;系列文章&lt;/b&gt;
  &lt;/div&gt;
  &lt;div class=&#34;cblock-body&#34;&gt;
&lt;p&gt;

&lt;a href=&#34;https://rqdmap.top/posts/rcore/&#34;&gt;rCore操作系统实践 - rqdmap | blog&lt;/a&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;本章主要是讲解如何设计和实现建立在裸机上的执行环境, 并让应用程序能够在这样的执行环境中运行.&lt;/p&gt;
&lt;p&gt;导言中说:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;大多数程序员的第一行代码都从 Hello, world! 开始，当我们满怀着好奇心在编辑器内键入仅仅数个字节，再经过几行命令编译（靠的是编译器）、运行（靠的是操作系统），终于在黑洞洞的终端窗口中看到期望中的结果的时候，一扇通往编程世界的大门已经打开。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>rCore操作系统实践</title>
      <link>https://rqdmap.top/posts/rcore/</link>
      <pubDate>Sun, 23 Jul 2023 20:38:23 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/rcore/</guid>
      <description>&lt;div class=&#34;cblock-warn cblock&#34;&gt;
  &lt;div class=&#34;cblock-logo cblock-warn-logo&#34;&gt;&lt;/div&gt;
  &lt;div class=&#34;cblock-warn-title cblock-title&#34;&gt;
    &lt;b&gt;系列文章&lt;/b&gt;
  &lt;/div&gt;
  &lt;div class=&#34;cblock-body&#34;&gt;
&lt;p&gt;

&lt;a href=&#34;https://rqdmap.top/posts/rcore1/&#34;&gt;rCore-OS: 基本执行环境 - rqdmap | blog&lt;/a&gt;


&lt;a href=&#34;https://rqdmap.top/posts/rcore2/&#34;&gt;rCore-OS: 批处理系统 - rqdmap | blog&lt;/a&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;在寻找Rust实践性的学习材料的过程中发现了

  
    
  

&lt;a href=&#34;https://github.com/rcore-os/rCore&#34; class=external-link &gt;rCore-OS&lt;/a&gt;项目, 其基于RISC-V架构实现一个用Rust写的操作系统; 教程看上去也不错, 十分的详实且成体系: 

  
    
  

&lt;a href=&#34;http://rcore-os.cn/rCore-Tutorial-Book-v3/&#34; class=external-link &gt;rCore-Tutorial-Book-v3 3.6.0-alpha.1 文档&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;因而准备照着教程学习一下rcore-os, 并企图在过程中对Rust的基本编程与操作系统等方面都能获得更进一步的理解.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>网页字体精简方案</title>
      <link>https://rqdmap.top/posts/%E7%BD%91%E9%A1%B5%E5%AD%97%E4%BD%93%E4%BC%98%E5%8C%96/</link>
      <pubDate>Fri, 21 Jul 2023 02:13:05 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/%E7%BD%91%E9%A1%B5%E5%AD%97%E4%BD%93%E4%BC%98%E5%8C%96/</guid>
      <description>&lt;p&gt;这是一个令人兴奋的想法! 其目的在于&lt;b&gt;&lt;font color=&#34;red&#34;&gt;按需&lt;/font&gt;&lt;/b&gt;精简字体库, 以使得网页在保证显示效果的同时减少需要传输的数据量.&lt;/p&gt;
&lt;p&gt;我个人使用的字体为思源黑的CJK+Iosevka的西文, 为了实现强制爱(x), 之前对于博客字体的处理方式都是用css指定本地的字体文件, 手动压一份woff2的Iosevka和思源黑的字体放在网站服务器上, 如果用户没有的话就去下载吧(导致加载缓慢), 而且由于缺省字体的存在, 会造成特别明显的FOUT(Flash Of Unstyled Text)问题, 特别是最近新加坡接连抽风, 不确定是不是被FireWall管控了, 流量被控制了, 经常出现字体根本下载不出来的情况.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>SUID与程序执行</title>
      <link>https://rqdmap.top/posts/suid/</link>
      <pubDate>Fri, 14 Jul 2023 15:08:34 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/suid/</guid>
      <description>&lt;p&gt;在之前的博客

&lt;a href=&#34;https://rqdmap.top/posts/archlinux%E8%B0%83%E4%BC%98/&#34;&gt;ArchLinux调优: 显卡、声卡与电源 - rqdmap | blog&lt;/a&gt;中说明了如何使用开源的nvidia驱动并且关闭nvidia的供电来使得笔记本续航能力的提升.&lt;/p&gt;
&lt;p&gt;通常来说我们不希望每次开机后都要手动向bbswitch写off字符串, 因而一般委以重任给dm; 不过像ly这样的纯终端dm貌似不具备在X Server加载后、登陆进入系统前的这个时间段执行一些脚本(可能因为ly运行在X Server加载前!), 因而后来出于种种考虑使用的是lightdm加载器, 比较现代, theme支持前端技术, 也比较好看, 最重要的是图形化的启动界面意味着可以在X加载后执行一些脚本.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>软件所实习体会与总结</title>
      <link>https://rqdmap.top/posts/%E8%BD%AF%E4%BB%B6%E6%89%80%E5%AE%9E%E4%B9%A0/</link>
      <pubDate>Fri, 07 Jul 2023 22:24:10 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/%E8%BD%AF%E4%BB%B6%E6%89%80%E5%AE%9E%E4%B9%A0/</guid>
      <description>&lt;p&gt;眨眼间就在软件所搞了4个月不到点的科研实习, 今天汇报完最后一个项目, 彻底run了, 浅浅记录一些心得体会..&lt;/p&gt;
&lt;p&gt;实习本身任务不算重, 线上实习, 无严格的考勤, 每周3-4天, 期间总共做了三个研究项目:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Kernel Mode Linux:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;

&lt;a href=&#34;https://rqdmap.top/posts/%E5%9F%BA%E4%BA%8Eqemu%E6%90%AD%E5%BB%BA%E5%86%85%E6%A0%B8%E8%B0%83%E8%AF%95%E7%8E%AF%E5%A2%83/&#34;&gt;基于QEMU搭建内核调试环境&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;

&lt;a href=&#34;https://rqdmap.top/posts/kml/&#34;&gt;KML: 启用Kernel Model Linux&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;

&lt;a href=&#34;https://rqdmap.top/posts/kml%E6%9C%BA%E5%88%B6%E7%A0%94%E7%A9%B6/&#34;&gt;KML: 实现机制研究&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Sched_ext 拓展调度技术&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;

&lt;a href=&#34;https://rqdmap.top/posts/scx/&#34;&gt;sched_ext机制研究&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;编译期间内核优化技术&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;真要说起来, 三个项目可能写了有几千行LaTeX代码, 而编程语言则是一行没写(sh和python脚本语言可能倒是写了点!)..&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>有关博客与笔记的思考</title>
      <link>https://rqdmap.top/posts/thought_of_notes/</link>
      <pubDate>Fri, 07 Jul 2023 11:09:29 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/thought_of_notes/</guid>
      <description>&lt;p&gt;这是一些有关于博客内容的思考, 事实上在之前就有过一些想法, 曾经在about的Todo列表中写过:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;增添&lt;strong&gt;弃坑&lt;/strong&gt;等标签, 允许保留与查看这些博客, 但不在主页渲染&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;当时就意识到了目前百余篇博客中可能一大部分都是一些思想的碎屑, 或者是一些草稿纸上的笔记, 真正让人满意的、好的技术博客可能寥寥.&lt;/p&gt;
&lt;p&gt;翻看到这样一篇帖子也是进一步唤起了一些有关后续博客内容的思考:&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Bluespec与CPU(MIT6.375)</title>
      <link>https://rqdmap.top/posts/bluespec-and-cpus/</link>
      <pubDate>Sun, 25 Jun 2023 20:43:50 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/bluespec-and-cpus/</guid>
      <description>&lt;p&gt;BUAA 6系高等机组实验作业, 使用bluespec工具链编程, 实现一个{,非}流水的右移器以及一个精简MIPS指令集CPU的一微小的部分.&lt;/p&gt;
&lt;p&gt;课程疑似参考

  
    
  

&lt;a href=&#34;http://csg.csail.mit.edu/6.375/6_375_2006_www/index.html&#34; class=external-link &gt;6.375 Complex Digital Systems - Spring 2006&lt;/a&gt;; 因为

  
    
  

&lt;a href=&#34;http://csg.csail.mit.edu/6.375/6_375_2006_www/handouts/lectures/L14-BS8-Modules.pdf&#34; class=external-link &gt;PPT的风格&lt;/a&gt;是一模一样的, 但是课程年份与内容应该可能有所出入, 不进行一个几乎是20年前课程的考据了.&lt;/p&gt;
&lt;h2 id=&#34;环境搭建&#34;&gt;环境搭建&lt;/h2&gt;
&lt;p&gt;实验默认提供的环境是ssh + X11转发, 不过在我的机器好像有问题:&lt;/p&gt;</description>
    </item>
	          
    <item>
      <title>Linux内核中的Rust使用</title>
      <link>https://rqdmap.top/posts/linux%E5%86%85%E6%A0%B8%E4%B8%AD%E7%9A%84rust%E4%BD%BF%E7%94%A8/</link>
      <pubDate>Mon, 05 Jun 2023 16:09:12 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/linux%E5%86%85%E6%A0%B8%E4%B8%AD%E7%9A%84rust%E4%BD%BF%E7%94%A8/</guid>
      <description>&lt;p&gt;内核代码选用Linux-6.3.4, 对其中有关Rust代码进行简单的分析.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>ArchLinux: 蓝牙支持</title>
      <link>https://rqdmap.top/posts/archlinux-bluetooth/</link>
      <pubDate>Thu, 25 May 2023 02:09:43 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/archlinux-bluetooth/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;
&lt;p&gt;在考虑购买 HHKB 时, 由于有线版本只要1k, 带有蓝牙的双模则要2k5.. 不过由于蓝牙无线确实是十分的方便, 因而还是希望测试一下本机的蓝牙模块.&lt;/p&gt;
&lt;h2 id=&#34;操作教程&#34;&gt;操作教程&lt;/h2&gt;
&lt;p&gt;主要参考

  
    
  

&lt;a href=&#34;https://wiki.archlinux.org/title/Bluetooth&#34; class=external-link &gt;&amp;lt;Bluetooth - ArchWiki&amp;gt;&lt;/a&gt;即可.&lt;/p&gt;


&lt;div class=&#34;cblock-info cblock&#34;&gt;
  &lt;div class=&#34;cblock-logo cblock-info-logo&#34;&gt;&lt;/div&gt;
  &lt;div class=&#34;cblock-info-title cblock-title&#34;&gt;
    ArchWiki 中的相关内容
  &lt;/div&gt;
  
  &lt;div class=&#34;cblock-body&#34;&gt;
  
  本机是Dell G5520 Nvidia, 可以修改ArchWiki对应的部分了:) 
   
  &lt;div align=&#34;center&#34;&gt; 
    &lt;img src=&#34;images/arch.png&#34; style=&#34;width:100%; max-width:600px;&#34;&gt; 
    &lt;div class=&#34;img-caption&#34;&gt; 
       
  &lt;a href=&#34;https://wiki.archlinux.org/title/Bluetooth&#34;&gt;Bluetooth - ArchWiki&lt;/a&gt; 
   
    &lt;/div&gt; 
  &lt;/div&gt; 
   
   
   
  &lt;/div&gt;
  
&lt;/div&gt;
&lt;p&gt;安装几个相关的包:&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>NixOS: 选择与放弃</title>
      <link>https://rqdmap.top/posts/nixos/</link>
      <pubDate>Wed, 24 May 2023 17:50:09 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/nixos/</guid>
      <description>&lt;p&gt;偶然听说了NixOS, 其万物皆配置文件的理念深深地吸引了我. 由于Arch下的pacman对于系统的监控总是不够地完全, 完全可能出现安装的某个包被卸载后一些配置/数据文件遗留在本机(经过测试, pacman -Rsun并不行, 后续考虑结合pacman -Ql写一些钩子函数), 或者是我修改了若干位于/etc/目录下的文件但这些修改并不会被包管理器追踪, 这极大地造成了系统状态的不确定性(冗余垃圾+不可复现). 因此, NixOS的理念从一开始就极大地吸引了有一些系统洁癖的我.&lt;/p&gt;</description>
    </item>
	    
    <item>
      <title>Neovim插件管理与配置</title>
      <link>https://rqdmap.top/posts/nvim-config/</link>
      <pubDate>Mon, 24 Apr 2023 16:40:28 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/nvim-config/</guid>
      <description>&lt;p&gt;为Nvim添加了&lt;code&gt;nvim-cmp&lt;/code&gt;插件栈&amp;hellip; 之前一直没有动手, 只单独安装了几个无复杂依赖的插件, 这次直接一口气从&lt;code&gt;nvim-cmp&lt;/code&gt;补全插件, LSP相关, 代码块补全, 模糊查找等全部搞好了..&lt;/p&gt;
&lt;p&gt;其实际上高度耦合&amp;hellip; 代码块补全以及LSP最终必须全部集成到&lt;code&gt;nvim-cmp&lt;/code&gt;中, 而且还更新了代码块补全为luasnip这个lua编写的补全前端(?不确定), 丢弃了原本的utlisnip, 因而还把所有自定义的代码块全部用luasnip的语法重写了..同时, 修改了插件管理器为lazy.nvim, 重构了我的nvim的所有配置文件的目录树结构..&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>ArchLinux调优: 显卡、声卡与电源</title>
      <link>https://rqdmap.top/posts/archlinux%E8%B0%83%E4%BC%98/</link>
      <pubDate>Sun, 23 Apr 2023 01:29:36 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/archlinux%E8%B0%83%E4%BC%98/</guid>
      <description>&lt;p&gt;记录一些最近针对本机硬件设备驱动相关的调整与优化(?反向优化), 主要涉及到Nvidia独立显卡, Intel声卡以及电源管理等几个部分.&lt;/p&gt;
&lt;h2 id=&#34;电源管理&#34;&gt;电源管理&lt;/h2&gt;
&lt;p&gt;在使用Windows时基本上是稳定1.5-2h左右, 去年刚配置好我的bspwm桌面系统后却能使用到4h&amp;hellip; 结果目前Linux的续航又变成2h了.. 所以研究一下如何对Linux的电源进行监视与管理.&lt;/p&gt;</description>
    </item>
	    
    <item>
      <title>sched_ext机制研究</title>
      <link>https://rqdmap.top/posts/scx/</link>
      <pubDate>Sun, 09 Apr 2023 19:41:48 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/scx/</guid>
      <description>&lt;h2 id=&#34;slide&#34;&gt;Slide&lt;/h2&gt;
&lt;p&gt;充斥着大量的谬误与个人的随意理解: 

&lt;a href=&#34;https://rqdmap.top/posts/scx/Demo.pdf&#34;&gt;sched_ext机制研究&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;简介&#34;&gt;简介&lt;/h2&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;https://lwn.net/Articles/922405/&#34; class=external-link &gt;&amp;lt;The extensible scheduler class [LWN.net]&amp;gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;BPF背后的核心思想是, 它允许程序在运行时从用户空间加载到内核中; 与现在的Linux系统相比, 使用BPF进行调度有可能实现明显不同的调度行为. 那么, 为什么现在要提出BPF机制呢? 为了期待一场长时间的讨论, 补丁系列的封面信详细描述了这项工作背后的动机. 简而言之, 该论点认为, 在BPF中编写调度策略的能力大大降低了试验新调度方法的难度. 由于引入了完全公平调度器CFS, 我们的工作负载及其运行的系统都变得更加复杂. 要开发适合当前系统的调度算法, 需要进行试验. BPF调度类允许以一种安全的方式进行实验, 甚至不需要重新启动测试机器. bpf编写的调度器还可以提高可能不值得在主线内核中支持的小众工作负载的性能, 这些工作负载更容易部署到大量系统中.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Logisim开发单周期MIPS处理器</title>
      <link>https://rqdmap.top/posts/logisim%E5%BC%80%E5%8F%91%E5%8D%95%E5%91%A8%E6%9C%9Fmips%E5%A4%84%E7%90%86%E5%99%A8/</link>
      <pubDate>Thu, 06 Apr 2023 18:20:09 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/logisim%E5%BC%80%E5%8F%91%E5%8D%95%E5%91%A8%E6%9C%9Fmips%E5%A4%84%E7%90%86%E5%99%A8/</guid>
      <description>&lt;p&gt;作为计组第一次实验的报告模板进行整理, 内容为使用Logisim开发单周期MIPS处理器, 支持的指令集仅有: addu, subu, ori, lw, wsw, beq, lui这7条, 其中addu以及subu不必要实现溢出.&lt;/p&gt;
&lt;h2 id=&#34;实验环境&#34;&gt;实验环境&lt;/h2&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;https://github.com/Logisim-Ita/Logisim&#34; class=external-link &gt;&amp;lt;Logisim-Ita/Logisim: Logisim Italian Fork&amp;gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;对Linux的支持还算可以, 因而直接在Linux上进行实验即可.&lt;/p&gt;
&lt;h2 id=&#34;总体设计&#34;&gt;总体设计&lt;/h2&gt;
&lt;p&gt;下图展示了该单周期处理器的总体设计:&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Linux下修改文件的4个时间</title>
      <link>https://rqdmap.top/posts/linux%E4%B8%8B%E4%BF%AE%E6%94%B9%E6%96%87%E4%BB%B6%E7%9A%844%E4%B8%AA%E6%97%B6%E9%97%B4/</link>
      <pubDate>Fri, 24 Mar 2023 13:43:36 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/linux%E4%B8%8B%E4%BF%AE%E6%94%B9%E6%96%87%E4%BB%B6%E7%9A%844%E4%B8%AA%E6%97%B6%E9%97%B4/</guid>
      <description>&lt;p&gt;由于一些原因&amp;hellip; 接触到了如何修改Linux(/windows)下文件4个时间的方式.&lt;/p&gt;
&lt;h2 id=&#34;修改时间&#34;&gt;修改时间&lt;/h2&gt;
&lt;p&gt;修改Access time 与 Modify time:&lt;/p&gt;






&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-6dabcbc0444a6dcca1b9366956ae3185-0-1774547726646&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    bash
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-6dabcbc0444a6dcca1b9366956ae3185-0-1774547726646&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&lt;/span&gt;&lt;span&gt;touch -a &amp;lt;file&amp;gt; -d &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#39;2000-01-01 08:15:23&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;2&lt;/span&gt;&lt;span&gt;touch -m &amp;lt;file&amp;gt; -d &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#39;2000-01-01 08:15:23&amp;#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;而Change time与Birth time貌似是与fs相绑定的, 比如在Linux的ext4下打包一个zip, 传送至windows的ntfs中解压, 显示的创建时间也只是当时windows的时钟所显示的时间&amp;hellip; 关于这一点尚未仔细研究, 不过由于修改这两个时间的方式一般都是通过修改系统时钟.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>clash&#43;systemd自启动问题</title>
      <link>https://rqdmap.top/posts/clash%E8%87%AA%E5%90%AF%E5%8A%A8%E9%97%AE%E9%A2%98/</link>
      <pubDate>Fri, 24 Mar 2023 13:43:18 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/clash%E8%87%AA%E5%90%AF%E5%8A%A8%E9%97%AE%E9%A2%98/</guid>
      <description>&lt;p&gt;通常来说, 参考网上最常见的guide来配置systemd + clash 没有问题: 

  
    
  

&lt;a href=&#34;https://github.com/Dreamacro/clash/wiki/Running-Clash-as-a-service&#34; class=external-link &gt;&amp;lt;Running Clash as a service · Dreamacro/clash Wiki&amp;gt;&lt;/a&gt;&lt;/p&gt;






&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-7a1d6f7f00ff8b657a4c766f26c34aea-0-1774547726647&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    bash
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-7a1d6f7f00ff8b657a4c766f26c34aea-0-1774547726647&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#666&#34;&gt;[&lt;/span&gt;Unit&lt;span style=&#34;color:#666&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 2&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#19177c&#34;&gt;Description&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;Clash daemon, A rule-based proxy in Go.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#19177c&#34;&gt;After&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;network.target
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 4&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 5&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#666&#34;&gt;[&lt;/span&gt;Service&lt;span style=&#34;color:#666&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 6&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#19177c&#34;&gt;Type&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;simple
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 7&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#19177c&#34;&gt;Restart&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;always
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 8&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#19177c&#34;&gt;ExecStart&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;/usr/local/bin/clash -d /etc/clash
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 9&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;10&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#666&#34;&gt;[&lt;/span&gt;Install&lt;span style=&#34;color:#666&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;11&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#19177c&#34;&gt;WantedBy&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;multi-user.target&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;问题排查&#34;&gt;问题排查&lt;/h2&gt;
&lt;p&gt;但是在我的配置中(优先走的是url-test策略组)会出现一些问题:&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>KML: 实现机制研究</title>
      <link>https://rqdmap.top/posts/kml%E6%9C%BA%E5%88%B6%E7%A0%94%E7%A9%B6/</link>
      <pubDate>Thu, 16 Mar 2023 21:11:00 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/kml%E6%9C%BA%E5%88%B6%E7%A0%94%E7%A9%B6/</guid>
      <description>&lt;p&gt;本文将参考作者给出的guide, 深入研究IA-32下KML机制的工作原理以及相关技术.&lt;/p&gt;
&lt;p&gt;有关于KML技术的使用可以参考:

&lt;a href=&#34;https://rqdmap.top/posts/kml/#stack-starvation&#34;&gt;&amp;lt;启用Kernel Model Linux - rqdmap | blog&amp;gt;&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;工作原理&#34;&gt;工作原理&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;To execute user programs in kernel mode, Kernel Mode Linux has a special start_thread (start_kernel_thread) routine, which is called in processing execve(2) and sets registers of a user process to specified initial values. The original start_thread routine sets CS segment register to __USER_CS. The start_kernel_thread routine sets the CS register to __KERNEL_CS. Thus, a user program is started as a user process executed in kernel mode.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;文件&lt;code&gt;arch/x86/kernel/process_32.c&lt;/code&gt;中涉及两处KML的补丁:&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>duu: 按照大小排序的du指令</title>
      <link>https://rqdmap.top/posts/duu/</link>
      <pubDate>Mon, 13 Mar 2023 12:12:45 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/duu/</guid>
      <description>&lt;h2 id=&#34;正确的办法&#34;&gt;正确的办法!&lt;/h2&gt;
&lt;center&gt;&lt;b&gt;&lt;font size=6 color=&#34;red&#34;&gt;du -d 1 -h | sort -hr&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;
&lt;h2 id=&#34;duu&#34;&gt;duu&lt;/h2&gt;
&lt;p&gt;du 指令无法以可读的形式按照大小排序, &lt;code&gt;du -d 1 -h | sort -nr&lt;/code&gt;并不正确, 因而写一个简单的脚本进行实现.&lt;/p&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-a333407e75e722bfe11c7d22d4b872ab-0-1774547726665&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    rust
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-a333407e75e722bfe11c7d22d4b872ab-0-1774547726665&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-a333407e75e722bfe11c7d22d4b872ab-0-1774547726665&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-rust&#34; data-lang=&#34;rust&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;use&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;std::env;&lt;span style=&#34;color:#bbb&#34;&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 2&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;fn&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;()&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 4&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;let&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;args: &lt;span style=&#34;color:#008000&#34;&gt;Vec&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#008000&#34;&gt;String&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;env::args().collect();&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 5&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#00f&#34;&gt;assert!&lt;/span&gt;(args.len()&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;);&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 6&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 7&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;args[&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;].len()&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;18&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 8&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;        &lt;/span&gt;&lt;span style=&#34;color:#00f&#34;&gt;println!&lt;/span&gt;(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;Number too large&amp;#34;&lt;/span&gt;);&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 9&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;        &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt;;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;10&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;}&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;11&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;12&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;c&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;in&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;args[&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;].chars()&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;13&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;        &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;c.is_digit(&lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;)&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;14&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;            &lt;/span&gt;&lt;span style=&#34;color:#00f&#34;&gt;println!&lt;/span&gt;(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;Invalid number&amp;#34;&lt;/span&gt;);&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;15&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;            &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt;;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;16&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;        &lt;/span&gt;}&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;17&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;}&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;18&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;19&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;let&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;nr_bytes&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;args[&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;].parse::&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;u64&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt;().unwrap();&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;20&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;/* KB -&amp;gt; MB -&amp;gt; GB */&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;21&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;22&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;let&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;mut&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;level: &lt;span style=&#34;color:#b00040&#34;&gt;usize&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;23&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;let&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;mut&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;tmp&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;nr_bytes;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;24&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;tmp&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;25&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;        &lt;/span&gt;tmp&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;/=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1024&lt;/span&gt;;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;26&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;        &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;tmp&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;27&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;            &lt;/span&gt;level&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;28&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;        &lt;/span&gt;}&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;29&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;}&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;30&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;31&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;// du指令默认的单位是KB!
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;32&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;let&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;levels&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;[&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;KB&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;MB&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;GB&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;TB&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;PB&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;EB&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;ZB&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;YB&amp;#34;&lt;/span&gt;];&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;33&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#00f&#34;&gt;print!&lt;/span&gt;(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#b68;font-weight:bold&#34;&gt;{:&amp;gt;.2}&lt;/span&gt;&lt;span style=&#34;color:#b62;font-weight:bold&#34;&gt;\t&lt;/span&gt;&lt;span style=&#34;color:#b68;font-weight:bold&#34;&gt;{}&lt;/span&gt;&lt;span style=&#34;color:#b62;font-weight:bold&#34;&gt;\t&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;nr_bytes&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;as&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;f64&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;u64&lt;/span&gt;::pow(&lt;span style=&#34;color:#666&#34;&gt;1024&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;level&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;as&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;u32&lt;/span&gt;)&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;as&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;f64&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;levels[level]);&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;34&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;再用awk处理一下du的第一列输出.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Acme.sh&#43;ZeroSSL证书部署</title>
      <link>https://rqdmap.top/posts/nginx&#43;zerossl%E8%AF%81%E4%B9%A6%E9%83%A8%E7%BD%B2/</link>
      <pubDate>Fri, 10 Mar 2023 13:20:21 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/nginx&#43;zerossl%E8%AF%81%E4%B9%A6%E9%83%A8%E7%BD%B2/</guid>
      <description>&lt;p&gt;之前一直沿用的最老的服务器的ssl证书提供商

  
    
  

&lt;a href=&#34;https://freessl.cn/&#34; class=external-link &gt;FreeSSL首页 - FreeSSL.cn一个提供免费HTTPS证书申请的网站&lt;/a&gt;, 前阵子发现不知道怎么不太行了, 偶尔会出现证书不被信任的情况, 过一段时间可能会自己恢复&amp;hellip; 不过去官网查了下发现自己的账号下居然好像又没有这份证书&amp;hellip; 很奇怪, 总之打算换一下SSL证书提供商.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>KML: 启用Kernel Model Linux</title>
      <link>https://rqdmap.top/posts/kml/</link>
      <pubDate>Wed, 08 Mar 2023 10:58:52 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/kml/</guid>
      <description>&lt;h2 id=&#34;kml简介&#34;&gt;KML简介&lt;/h2&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;http://web.yl.is.s.u-tokyo.ac.jp/~tosh/kml/&#34; class=external-link &gt;Kernel Mode Linux: Execute user processes in kernel mode&lt;/a&gt; 是一种允许&lt;strong&gt;用户程序运行于内核态&lt;/strong&gt;的技术. 处于内核态的程序可以直接访问任意的内核空间, 无需再使用软中断和上下文切换等手段进行系统调用. 此外, 这些程序也会正常的参与分页和调度, 这样哪怕这些程序死循环, 整个系统也不会因此卡死.&lt;/p&gt;
&lt;p&gt;如何使用KML? 编译了打好补丁的内核后, 在&lt;code&gt;/trusted/&lt;/code&gt;目录下的程序将自动进入内核态运行.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>基于QEMU搭建内核调试环境</title>
      <link>https://rqdmap.top/posts/%E5%9F%BA%E4%BA%8Eqemu%E6%90%AD%E5%BB%BA%E5%86%85%E6%A0%B8%E8%B0%83%E8%AF%95%E7%8E%AF%E5%A2%83/</link>
      <pubDate>Mon, 06 Mar 2023 14:58:27 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/%E5%9F%BA%E4%BA%8Eqemu%E6%90%AD%E5%BB%BA%E5%86%85%E6%A0%B8%E8%B0%83%E8%AF%95%E7%8E%AF%E5%A2%83/</guid>
      <description>&lt;p&gt;搞一份内核源码, 并尝试调试一个拓展内核功能的补丁

  
    
  

&lt;a href=&#34;https://github.com/sonicyang/KML&#34; class=external-link &gt;Kernel-Mode-Linux&lt;/a&gt;; 对于该模块的调试与分析见后续博文&amp;lt;

&lt;a href=&#34;https://rqdmap.top/posts/kml&#34;&gt;启用Kernel Model Linux&lt;/a&gt;&amp;gt;&lt;/p&gt;
&lt;h2 id=&#34;linux内核编译&#34;&gt;Linux内核编译&lt;/h2&gt;
&lt;p&gt;这里使用的是Linux4.4.12(4.0.*, 3.1*, 2.6.*系列也有尝试过), 并且还需要打上&lt;code&gt;PREEMPT_RT&lt;/code&gt;实时内核补丁, 借鉴于Github KML仓库:&lt;/p&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-6a3385886fa8c6388e697512dbd0427e-0-1774547727731&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    bash
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-6a3385886fa8c6388e697512dbd0427e-0-1774547727731&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-6a3385886fa8c6388e697512dbd0427e-0-1774547727731&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# 0. Clone this repository&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 2&lt;/span&gt;&lt;span&gt;git clone git@github.com:sonicyang/KML.git
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 3&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 4&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# 1. Clone Linux 4.4.12&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 5&lt;/span&gt;&lt;span&gt;git clone -b v4.4.12 --depth &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 6&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 7&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# You will get a copy of Linux 4.4.12 source in directory linux&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 8&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 9&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# 2. Download PREEMPT_RT patch&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;10&lt;/span&gt;&lt;span&gt;wget https://cdn.kernel.org/pub/linux/kernel/projects/rt/4.4/older/patch-4.4.12-rt18.patch.xz
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;11&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;12&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# You will get a file patch-4.4.12-rt18.patch.xz&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;13&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;14&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# 3. Apply the PREEMPT_RT patch&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;15&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000&#34;&gt;cd&lt;/span&gt; linux
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;16&lt;/span&gt;&lt;span&gt;xzcat ../patch-4.4.12-rt18.patch.xz | patch -p1
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;17&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;18&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# You will have a modified Linux 4.4.12 source with PREEMPT_RT, now.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;19&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;20&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# 4. Commit the the changes at once (Otherwise, git am will fail)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;21&lt;/span&gt;&lt;span&gt;git add .
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;22&lt;/span&gt;&lt;span&gt;git commit -m &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;Apply PREEMPT_RT&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;23&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;24&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# Now you should have a clean git repository without unstaged changes&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;25&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;26&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# 5. Apply these 2 patches&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;27&lt;/span&gt;&lt;span&gt;cp ../KML/*.patch .
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;28&lt;/span&gt;&lt;span&gt;git am *.patch
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;29&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;30&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# You are good to go&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;31&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;# Compile the kernel then you should be able to use KML&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;preempt_rt补丁&#34;&gt;PREEMPT_RT补丁&lt;/h3&gt;
&lt;p&gt;关于该内核补丁, 是为了将Linux内核拓展为一个实时的操作系统.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Rust-泛型与特征</title>
      <link>https://rqdmap.top/posts/rust-%E6%B3%9B%E5%9E%8B%E4%B8%8E%E7%89%B9%E5%BE%81/</link>
      <pubDate>Wed, 22 Feb 2023 15:31:34 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/rust-%E6%B3%9B%E5%9E%8B%E4%B8%8E%E7%89%B9%E5%BE%81/</guid>
      <description>&lt;p&gt;Rust的泛型(Generics)和特征(Trait)看的一个头两个大&amp;hellip; 需要仔细学习整理一下, rust_course的标题分类感觉有点confusing&amp;hellip;&lt;/p&gt;
&lt;h2 id=&#34;泛型&#34;&gt;泛型&lt;/h2&gt;
&lt;h3 id=&#34;如何使用泛型&#34;&gt;如何使用泛型?&lt;/h3&gt;
&lt;p&gt;泛型函数:&lt;/p&gt;






&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-938d482eb7601210526464e0bbb7b0f0-0-1774547726687&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    rust
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-938d482eb7601210526464e0bbb7b0f0-0-1774547726687&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-rust&#34; data-lang=&#34;rust&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;fn&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;largest&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;T&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt;(list: &lt;span style=&#34;color:#008000&#34;&gt;&amp;amp;&lt;/span&gt;[T])&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;-&amp;gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;T&lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;2&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;	&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;..&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;3&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;泛型结构体:&lt;/p&gt;






&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-938d482eb7601210526464e0bbb7b0f0-1-1774547726687&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    rust
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-938d482eb7601210526464e0bbb7b0f0-1-1774547726687&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-rust&#34; data-lang=&#34;rust&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;struct&lt;/span&gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;Point&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;T&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;2&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;x: &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;T&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;y: &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;T&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;4&lt;/span&gt;&lt;span&gt;}&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;5&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;6&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;fn&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;()&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;7&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;let&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;integer&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;Point&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;x: &lt;span style=&#34;color:#666&#34;&gt;5&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;y: &lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;};&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;8&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;let&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;float&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;Point&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;x: &lt;span style=&#34;color:#666&#34;&gt;1.0&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;y: &lt;span style=&#34;color:#666&#34;&gt;4.0&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;};&lt;span style=&#34;color:#bbb&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;9&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;泛型枚举:&lt;/p&gt;</description>
    </item>
	    
    <item>
      <title>双系统环境下重装 Windows10</title>
      <link>https://rqdmap.top/posts/windows-archlinux-reinstall/</link>
      <pubDate>Sat, 18 Feb 2023 23:26:27 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/windows-archlinux-reinstall/</guid>
      <description>&lt;p&gt;因为 Win11 开机后经常会在使用 Chrome 等应用时卡死的问题并未得到修复, 最终在某一天 Windows 的崩溃问题终于扩散到了同一块磁盘上的 Linux 分区: 在一次 Windows 卡死并蓝屏后, 自动运行的 Dell 自动修复清空了我的 EFI 分区, 导致我的 Linux 系统也无法正确引导了.. 当时我仍然以为是 Windows 系统的问题, 因此尝试在维持 Linux 分区数据的同时, 重装 Win10 系统.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>ArchLinux上安装zathura-develop</title>
      <link>https://rqdmap.top/posts/archlinux%E4%B8%8A%E6%BA%90%E7%A0%81%E5%8C%85%E5%AE%89%E8%A3%85zathura/</link>
      <pubDate>Mon, 13 Feb 2023 01:35:47 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/archlinux%E4%B8%8A%E6%BA%90%E7%A0%81%E5%8C%85%E5%AE%89%E8%A3%85zathura/</guid>
      <description>&lt;p&gt;起因是因为

  
    
  

&lt;a href=&#34;https://pwmt.org/projects/zathura/&#34; class=external-link &gt;Zathura&lt;/a&gt;作为一款我很喜欢的使用键盘移动的PDF阅读器, 居然拥有如此糟糕的划词功能(Text Select), 其划词功能通过一个方框框选出一片区域, Zathura自动提取出其中的文本, 并自动复制到剪贴板, 看上去很美好但是存在两个问题:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;选区粒度粗, 不能做到精准到某个字符&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;划词不准确, 有时候阅读PDF文章时, 框出来的内容要么会变得很多要么缺胳膊断腿&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>网络实验复杂组网</title>
      <link>https://rqdmap.top/posts/%E5%A4%8D%E6%9D%82%E7%BB%84%E7%BD%91/</link>
      <pubDate>Sat, 14 Jan 2023 00:51:29 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/%E5%A4%8D%E6%9D%82%E7%BB%84%E7%BD%91/</guid>
      <description>&lt;h2 id=&#34;实验内容&#34;&gt;实验内容&lt;/h2&gt;
&lt;p&gt;本实验将模拟一个全国范围的银行主干网络, 采用总行数据中心、省行和地市行的三级架构，业务接入基于MPLS VPN体系结构进行部署。充分考虑网络的安全性和可靠性规划网络拓扑结构，根据业务接入需求统一规划VPN、IP地址和子网，采用设备备份、链路备份、路由备份等技术保证网络的可靠性。&lt;/p&gt;
&lt;h2 id=&#34;实验分析&#34;&gt;实验分析&lt;/h2&gt;
&lt;h3 id=&#34;体系架构&#34;&gt;体系架构&lt;/h3&gt;
&lt;p&gt;实验的主干网将分为4个自治系统, 所有的业务均采用VPN方式接入骨干网, 网络拓扑结构如下所示:&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>网络实验MPLS/VPN</title>
      <link>https://rqdmap.top/posts/mpls-vpn/</link>
      <pubDate>Sun, 08 Jan 2023 23:55:43 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/mpls-vpn/</guid>
      <description>&lt;p&gt;&lt;del&gt;偷懒偷的都是自己的懒&amp;hellip; 虽然考完试了, 但是之前没有整理MPLS/VPN的内容, 确实对这块不敢说是很清楚&amp;hellip;&lt;/del&gt;&lt;/p&gt;
&lt;h2 id=&#34;在此之前&#34;&gt;在此之前&lt;/h2&gt;
&lt;p&gt;曾经尝试了更新系统来修复打开chrome/任务管理器卡死的问题, 当时就提示说此次更新与vmware冲突, 需要卸载vmware&amp;hellip; 事实上确实与别的虚拟化平台会冲突.. 不仅仅是vmware, 还有vbox&amp;hellip; 不过因为一直没有再次进入过ensp所以今天才发现..&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Win11 开机后 Chrome 卡死: BIOS RAID 模式问题排查记录</title>
      <link>https://rqdmap.top/posts/windows-chrome/</link>
      <pubDate>Sun, 08 Jan 2023 22:20:12 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/windows-chrome/</guid>
      <description>&lt;p&gt;Windows11 在某一天忽然出现了开机后首次打开 Chrome 等应用时整个系统卡死的问题, 经过大量的排查以及机缘巧合, 最终定位到是因为笔记本自行更换过硬盘, 导致与 BIOS 中默认的硬盘控制器模式 RAID ON 不兼容.&lt;/p&gt;
&lt;p&gt;由于该卡死的问题并未在更换硬盘后立刻出现, 而是正常使用系统一段时间后忽然出现的问题; 同时, 由于我的笔记本同时运行 Linux 与 Win11 双系统, 仅在 Windows 系统上出现该问题. 因此在排查初期, 怀疑过是否是 Windows 系统中了病毒、软件自身等问题, 并未将目光聚焦到可能的硬件问题上.&lt;/p&gt;
&lt;p&gt;本文简单梳理一下整体的时间线作为记录, 并给出问题最终的解决方案.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>trash:取代危险的rm</title>
      <link>https://rqdmap.top/posts/trash%E5%8F%96%E4%BB%A3%E5%8D%B1%E9%99%A9%E7%9A%84rm/</link>
      <pubDate>Sun, 01 Jan 2023 13:23:27 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/trash%E5%8F%96%E4%BB%A3%E5%8D%B1%E9%99%A9%E7%9A%84rm/</guid>
      <description>&lt;p&gt;rm 指令十分的危险&amp;hellip; 为此希望实现一个回收站. archwiki给出了一些可用的建议

  
    
  

&lt;a href=&#34;https://wiki.archlinux.org/title/Trash_management&#34; class=external-link &gt;Trash management&lt;/a&gt;, 用下来体验不好, 打算自己搞一个.&lt;/p&gt;
&lt;p&gt;第一版的trash自己解析了输入的参数.. 然后加上unix时间戳后mv到一个指定的公共磁盘分区上(因而其实性能也不太好, 尤其是大文件的删除时), 但是最后还是死在了处理空格和引号之类的问题上.. 而且与原生rm的兼容性不好&amp;hellip;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Linux文件权限</title>
      <link>https://rqdmap.top/posts/linux%E6%96%87%E4%BB%B6%E6%9D%83%E9%99%90/</link>
      <pubDate>Sun, 01 Jan 2023 12:48:34 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/linux%E6%96%87%E4%BB%B6%E6%9D%83%E9%99%90/</guid>
      <description>&lt;p&gt;其实对于Linux的文件权限一直一知半解, 之前使用php尝试访问sqlite的时候就发生了文件权限的惨案, 至今也不知道为什么会这样.. 当时的情况是, 将博客的public文件夹放置在服务器的&lt;code&gt;/usr/share/nginx/html&lt;/code&gt;下就会G, 哪怕对数据库文件+该文件所在的目录都设置了777权限后php还是无法访问该目录下的sqlite DB; 修改放置位置到&lt;code&gt;/srv/http/&lt;/code&gt;下就可以了, 而且不需要设置777, 设置为755即可.. 但是其实之前也考虑到文件权限等等, 因而将nginx和php-fpm的用户全部设置为了rqdmap, 而public文件的用户和组也全部都是rqdmap&amp;hellip; 为何放到&lt;code&gt;/srv&lt;/code&gt;下就可以了呢&amp;hellip; 疑案未决&amp;hellip;&lt;/p&gt;
&lt;p&gt;因而准备稍微系统看一下Linux的文件权限管理.&lt;/p&gt;</description>
    </item>
	    
    <item>
      <title>实现Hit Counter访客统计</title>
      <link>https://rqdmap.top/posts/hit-counter/</link>
      <pubDate>Mon, 19 Dec 2022 14:43:40 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/hit-counter/</guid>
      <description>&lt;p&gt;找了下网络上的但是不是很满意&amp;hellip; 所以打算自己通过前后端实现一下Hit Counter来进行访客统计. 后端总体通过nginx + php-fpm + sqlite实现.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>网络实验(MPLS基础与考试)</title>
      <link>https://rqdmap.top/posts/%E7%BD%91%E7%BB%9C%E5%AE%9E%E9%AA%8C%E4%B8%8B/</link>
      <pubDate>Mon, 19 Dec 2022 12:20:09 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/%E7%BD%91%E7%BB%9C%E5%AE%9E%E9%AA%8C%E4%B8%8B/</guid>
      <description>&lt;p&gt;将所有的图片放在一个Markdown中太傻逼了, 超过了200张图片, 因而本篇博客再单独记录MPLS与网管的相关内容, 同时努力不再采用图片格式, 而是用Plain Text展示相关实验内容.&lt;/p&gt;
&lt;p&gt;不过比较怠惰, MPLS VPN只是结合着教材上做了一下实验, 没有进行记录; 网管则是觉得过于傻逼, 加上ensp也没有网管软件, 很多报文都没法复现, 直接跳过不管.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>vim使用技巧</title>
      <link>https://rqdmap.top/posts/vim%E4%BD%BF%E7%94%A8%E6%8A%80%E5%B7%A7/</link>
      <pubDate>Mon, 12 Dec 2022 23:34:58 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/vim%E4%BD%BF%E7%94%A8%E6%8A%80%E5%B7%A7/</guid>
      <description>&lt;p&gt;不知道怎么就放弃了VSC&amp;hellip; 极为朴素的用了3个月Vim&amp;hellip; 最近越发觉得不能够得心应手的进行编辑了, 因而感觉是时候系统地再精进一下Vim了&lt;/p&gt;
&lt;p&gt;首先记一下VSC的一些问题&amp;hellip;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;完全的OSS版本中, 许多插件都没有上线, 这样的VSC几乎无法使用了, 或许有什么奇技淫巧可以离线安装, 但是如果使用vsc还要折腾这么麻烦的话就偏离了使用它的初衷了; 而在微软的专有软件中(也是从官网上直接下载的版本), 插件有时候会有莫名的问题, 在我的archlinux上至少有如下两个问题, 感觉是比较大的瑕疵:&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>trojan&#43;nginx共用443端口</title>
      <link>https://rqdmap.top/posts/trojan&#43;nginx%E5%85%B1%E7%94%A8443%E7%AB%AF%E5%8F%A3/</link>
      <pubDate>Thu, 08 Dec 2022 19:41:35 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/trojan&#43;nginx%E5%85%B1%E7%94%A8443%E7%AB%AF%E5%8F%A3/</guid>
      <description>&lt;p&gt;当远端服务器的443与80端口已经运行着Http Server后, 如何复用端口以允许trojan同样监听443呢?&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Linux下为Chrome开启代理</title>
      <link>https://rqdmap.top/posts/linux%E4%B8%8B%E4%B8%BAchrome%E5%BC%80%E5%90%AF%E4%BB%A3%E7%90%86/</link>
      <pubDate>Wed, 07 Dec 2022 23:00:56 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/linux%E4%B8%8B%E4%B8%BAchrome%E5%BC%80%E5%90%AF%E4%BB%A3%E7%90%86/</guid>
      <description>&lt;p&gt;由于没有使用集成的桌面环境, 因而chrome没法读取全局代理的信息, 每次更新AUR chrome后都需要手动修改对应的桌面文件&amp;hellip; 这里小小mark一下解决办法, 并给出 ALPM 钩子代码&lt;/p&gt;
&lt;h2 id=&#34;命令行配置代理&#34;&gt;命令行配置代理&lt;/h2&gt;
&lt;p&gt;Rofi命令行启动的应该是桌面程序(?), 在这个地方:&lt;code&gt;/usr/share/applications/google-chrome.desktop&lt;/code&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>网络实验(OSPF,BGP与组播)</title>
      <link>https://rqdmap.top/posts/%E7%BD%91%E7%BB%9C%E5%AE%9E%E9%AA%8C%E4%B8%8A/</link>
      <pubDate>Sun, 27 Nov 2022 18:14:25 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/%E7%BD%91%E7%BB%9C%E5%AE%9E%E9%AA%8C%E4%B8%8A/</guid>
      <description>&lt;p&gt;本文章包含200张图片&amp;hellip; 请务必慎重打开该文章&amp;hellip;&lt;/p&gt;
&lt;p&gt;该博客主要为网络实验的全面复盘, 包括: OSPF, BGP, 组播, 网络管理与MPLS.&lt;/p&gt;
&lt;p&gt;参考了大量张力军老师的《计算机网络实验教程》, 通过ensp进行各项实验与分析.&lt;/p&gt;
&lt;p&gt;&lt;del&gt;后记, 本博客OSPF和组播的介绍比较系统比较好, 但是BGP不知道当时在整理的时候处于什么精神状态, 导致BGP的内容整理比较答辩&amp;hellip;&lt;/del&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Stratovirt &#43; Unikraft &#43; Redis</title>
      <link>https://rqdmap.top/posts/stratovirt/</link>
      <pubDate>Sat, 19 Nov 2022 18:26:34 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/stratovirt/</guid>
      <description>&lt;p&gt;尝试在stratovirt虚拟机上运行基于unikraft的redis, 并测试1G内存可以运行多少个实例, 但是行百里者半九十, 折腾了半天的网桥和DHCP, 又换了红帽, arch和debian系列的rootfs, 最终ubuntu总算把kraft成功build起来, 结果最后一步死活不行, 所以姑且记录一下, 但是意义寥寥&amp;hellip;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>ULK 中断与异常</title>
      <link>https://rqdmap.top/posts/ulk-%E4%B8%AD%E6%96%AD%E4%B8%8E%E5%BC%82%E5%B8%B8/</link>
      <pubDate>Sat, 03 Sep 2022 19:41:12 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/ulk-%E4%B8%AD%E6%96%AD%E4%B8%8E%E5%BC%82%E5%B8%B8/</guid>
      <description>&lt;p&gt;中断被定义为一个事件, 该事件将改变处理的指令执行顺序.&lt;/p&gt;
&lt;p&gt;中断分为同步中断和异步中断, 在Intel微处理器手册中, 它们分别被称为&lt;em&gt;异常&lt;/em&gt;和&lt;em&gt;中断&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;中断是由定时器或IO设备产生的; 而异常是由程序的错误产生的, 或是由内核必须处理的异常条件(如缺页, 对内核服务的请求等)产生的, 前者内核通过发送信号来处理, 后者则需要内核执行恢复异常的所有步骤.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>ULK 内存管理</title>
      <link>https://rqdmap.top/posts/ulk-%E5%86%85%E5%AD%98%E7%AE%A1%E7%90%86/</link>
      <pubDate>Fri, 29 Jul 2022 19:50:44 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/ulk-%E5%86%85%E5%AD%98%E7%AE%A1%E7%90%86/</guid>
      <description>&lt;h2 id=&#34;页框管理&#34;&gt;页框管理&lt;/h2&gt;
&lt;p&gt;尽管奔腾处理器允许采取两种不同大小的页框:4KB和4MB(PAE被激活则是2MB),但是Linux采用4KB页框大小作为基本分配单元，基于两个原因:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;由分页单元引发的缺页异常很容易得到解释:或者是页无权访问，或者是页不存在。在后一种情况下，内存分配器仅仅需要找到一个4KB空闲页框分配给进程。&lt;/p&gt;</description>
    </item>
	      
    <item>
      <title>6.828(2021)</title>
      <link>https://rqdmap.top/posts/6.828-2021/</link>
      <pubDate>Tue, 17 May 2022 19:56:46 +0800</pubDate>
      
      <guid>https://rqdmap.top/posts/6.828-2021/</guid>
      <description>&lt;p&gt;代码存放于

  
    
  

&lt;a href=&#34;https://github.com/rqdmap/6.828-2021&#34; class=external-link &gt;rqdmap/6.828-2021&lt;/a&gt;下的各个Branch中&lt;/p&gt;
&lt;h2 id=&#34;trap&#34;&gt;Trap&lt;/h2&gt;
&lt;h3 id=&#34;risc-v的trap机制&#34;&gt;RISC-V的trap机制&lt;/h3&gt;
&lt;p&gt;在RISC-V中，使用&lt;code&gt;ecall&lt;/code&gt;、发生exception和产生中断会使得CPU的控制流改变，转而去执行特殊任务以处理这些事件,这些事件被称为trap.&lt;/p&gt;
&lt;p&gt;为了完成trap处理事件,RSIC-V CPU提供了一系列控制寄存器,其中比较重要的有以下几个:&lt;/p&gt;</description>
    </item>
	          
    <item>
      <title>Promela初探</title>
      <link>https://rqdmap.top/posts/promela%E5%88%9D%E6%8E%A2/</link>
      <pubDate>Mon, 29 Nov 2021 18:44:41 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/promela%E5%88%9D%E6%8E%A2/</guid>
      <description>&lt;p&gt;由于要处理协议分析的大作业，接触了spin和Promela，下面整理一些内容作为记录。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;基础语法&#34;&gt;基础语法&lt;/h2&gt;
&lt;p&gt;参考资料：&lt;/p&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;https://en.wikipedia.org/wiki/Promela&#34; class=external-link &gt;Promela-维基百科&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;http://spinroot.com/spin/Man/promela.html#section0&#34; class=external-link &gt;Promela-Manual&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;数据类型&#34;&gt;数据类型&lt;/h3&gt;
&lt;p&gt;内置的基础类型有：bit(u1), bool(u1), byte(u8), short(16), int(32)等， 这里前缀u表示无符号数。&lt;/p&gt;
&lt;p&gt;声明一个变量可以类C&lt;code&gt;typename name [ = anyexpr ])&lt;/code&gt;, 也可以使用这种语法&lt;code&gt;unsigned name : constant [ = anyexpr ]&lt;/code&gt;, 这样将声明一个占用conststant位的无符号数。当初始化的值超出了数据类型能表示的范围后，数值将会被截断造成信息的损失，spin只会在随机或指定的模拟下会警告该情况。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>C内联汇编-AT&amp;T</title>
      <link>https://rqdmap.top/posts/c%E5%86%85%E8%81%94%E6%B1%87%E7%BC%96/</link>
      <pubDate>Wed, 13 Oct 2021 23:02:19 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/c%E5%86%85%E8%81%94%E6%B1%87%E7%BC%96/</guid>
      <description>&lt;hr&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;http://www.ibiblio.org/gferg/ldp/GCC-Inline-Assembly-HOWTO.html#s1&#34; class=external-link &gt;GCC-Inline-Assembly-HOWTO&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;gcc-汇编语法&#34;&gt;GCC 汇编语法&lt;/h2&gt;
&lt;p&gt;GCC采用AT&amp;amp;T的汇编语法，这和intel汇编语法有一些不同：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;操作数的顺序。intel语法通常是&lt;code&gt;op dst src&lt;/code&gt;，在AT&amp;amp;T语法中则是&lt;code&gt;op src dst&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;寄存器命名时需要加上&lt;code&gt;%&lt;/code&gt;作为前缀&lt;/li&gt;
&lt;li&gt;立即数的表示。AT&amp;amp;T立即数以&lt;code&gt;$&lt;/code&gt;作为前缀，对于字符串常量而言也需要加上该前缀。intel语法中使用&lt;code&gt;h&lt;/code&gt;后缀表示一个十六进制数，AT&amp;amp;T使用前缀&lt;code&gt;0x&lt;/code&gt;表示。因而当表示一个十六进制的立即数时，则写为&lt;code&gt;$0x123&lt;/code&gt;的格式&lt;/li&gt;
&lt;li&gt;操作符的大小。AT&amp;amp;T中使用操作符后缀来确定该被作用的操作数的长度，&amp;lsquo;b&amp;rsquo;, &amp;lsquo;w&amp;rsquo;, &amp;rsquo;l&amp;rsquo;分别表示byte(8-bit), word(16-bit), long(32-bit)；在intel汇编中则是通过ptr作用在操作数上确定对应的长度&lt;/li&gt;
&lt;li&gt;地址操作数。在间接寻址时，intel使用&lt;code&gt;[base + index*scale + disp]&lt;/code&gt;的语法，在AT&amp;amp;T中则使用&lt;code&gt;disp(base, index, scale)&lt;/code&gt;的语法。需要注意，当disp/scale中出现常量时，不需要$前缀。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;基础语法&#34;&gt;基础语法&lt;/h2&gt;






&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-7bf449fb692fa051d6d5768022e011c7-0-1774547727762&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    c
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-7bf449fb692fa051d6d5768022e011c7-0-1774547727762&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-c&#34; data-lang=&#34;c&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;asm&lt;/span&gt;(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;assembly code&amp;#34;&lt;/span&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;如果asm关键字与代码中其余部分冲突，也可以使用&lt;code&gt;__asm__&lt;/code&gt;指令，二者是等价的。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>ULK 进程</title>
      <link>https://rqdmap.top/posts/ulk-%E8%BF%9B%E7%A8%8B/</link>
      <pubDate>Mon, 04 Oct 2021 16:28:14 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/ulk-%E8%BF%9B%E7%A8%8B/</guid>
      <description>&lt;h2 id=&#34;进程轻量级进程和线程&#34;&gt;进程、轻量级进程和线程&lt;/h2&gt;
&lt;p&gt;进程是资源分配的实体，而线程是作业调度的基本单位。Linux使用轻量级进程来支持多线程应用程序，轻量级进程之间可以共享一部分资源，诸如地址空间、打开的文件等，通过将轻量级进程和线程关联起来就可以实现多线程应用程序。&lt;/p&gt;
&lt;h2 id=&#34;进程描述符&#34;&gt;进程描述符&lt;/h2&gt;
&lt;p&gt;进程描述符包含了与一个进程有关的所有信息，内容相当复杂。&lt;/p&gt;
&lt;p&gt;进程拥有多种特殊资源，本章主要说明两种字段：进程的状态和进程间的父子关系。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>ULK 内存寻址</title>
      <link>https://rqdmap.top/posts/ulk-%E5%86%85%E5%AD%98%E5%AF%BB%E5%9D%80/</link>
      <pubDate>Mon, 04 Oct 2021 16:28:08 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/ulk-%E5%86%85%E5%AD%98%E5%AF%BB%E5%9D%80/</guid>
      <description>&lt;h2 id=&#34;绪论&#34;&gt;绪论&lt;/h2&gt;
&lt;p&gt;绪论中从总体的框架介绍了一下操作系统、文件系统与Unix内核相关内容，不予过多赘述。&lt;/p&gt;
&lt;p&gt;一个新学到的内容是&lt;strong&gt;可重入(内核&lt;/strong&gt;，这意味着多个进程可以同时在内核下执行。这个特性太过于自然以至于让我一直没有注意到&lt;del&gt;也没有在教材上见过&lt;/del&gt;，如果某个进程在内核态中被阻塞被挂起，那么它当然不应该影响到其余进程对CPU的使用。在可重入内核的要求下，内核控制路径就会被交替执行。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>SEU夏令营回忆录_and_近况杂谈</title>
      <link>https://rqdmap.top/posts/seu%E5%A4%8F%E4%BB%A4%E8%90%A5%E5%9B%9E%E5%BF%86%E5%BD%95-and-%E8%BF%91%E5%86%B5%E6%9D%82%E8%B0%88/</link>
      <pubDate>Thu, 09 Sep 2021 22:58:25 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/seu%E5%A4%8F%E4%BB%A4%E8%90%A5%E5%9B%9E%E5%BF%86%E5%BD%95-and-%E8%BF%91%E5%86%B5%E6%9D%82%E8%B0%88/</guid>
      <description>&lt;p&gt;对一个月前的东南大学夏令营的回忆，并杂乱地记录一些近日杂谈..&lt;/p&gt;
&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;
&lt;p&gt;&lt;del&gt;现在电脑出了点问题都不知道是哪里爆炸了，有可能是挫比linux系统爆炸，有可能是挫比typora for linux兼容性不行，有可能是老键盘连接不稳定，还有可能自己误操作&amp;hellip;&amp;hellip;.为了正确写个mardown还重启了电脑&amp;hellip;&lt;/del&gt;&lt;/p&gt;
&lt;p&gt;更新博客一拖再拖&amp;hellip;当初面试完SEU后基本就彻底躺平，一直没有高兴记录博客；加上各种夏令营的具体情况理论上不得外传，显然不能发在部署在github的公开网页中，又想捣鼓有一下自定义theme的web前端后端技术，不过终归是无功而返&amp;hellip;中断的嵌套层数太多，让人彻底失去一项项补全的耐心了，也就一拖到底了 &lt;del&gt;主要是打游戏躺平不香吗&lt;/del&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>iie夏令营记</title>
      <link>https://rqdmap.top/posts/iie%E5%A4%8F%E4%BB%A4%E8%90%A5%E8%AE%B0/</link>
      <pubDate>Sat, 31 Jul 2021 00:15:16 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/iie%E5%A4%8F%E4%BB%A4%E8%90%A5%E8%AE%B0/</guid>
      <description>&lt;p&gt;iie（伪）夏令营记&lt;/p&gt;</description>
    </item>
	    
    <item>
      <title>LinuxKernel</title>
      <link>https://rqdmap.top/posts/linuxkernel/</link>
      <pubDate>Sat, 17 Jul 2021 22:09:30 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/linuxkernel/</guid>
      <description>&lt;p&gt;深入理解Linux内核学习笔记&lt;/p&gt;
&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;
&lt;p&gt;想要学习Linux内核的契机大抵源于读OS相关的paper时感到力不从心，就正好趁机学习一下素来感兴趣的内核知识。&lt;/p&gt;
&lt;p&gt;&lt;del&gt;写下“兴趣”二字后不禁想到日向晶也的论述，兴趣绝不能成为训练的动力，否则遇挫后兴趣消失也就自然放弃了训练；然而学习内核确实也没有什么迫切的压力与强制的要求，随意为之吧&lt;/del&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>ECNU夏令营记</title>
      <link>https://rqdmap.top/posts/ecnu%E5%A4%8F%E4%BB%A4%E8%90%A5%E8%AE%B0/</link>
      <pubDate>Tue, 13 Jul 2021 23:35:04 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/ecnu%E5%A4%8F%E4%BB%A4%E8%90%A5%E8%AE%B0/</guid>
      <description>&lt;p&gt;华东师范大学计算机营游记&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>BUAA夏令营记</title>
      <link>https://rqdmap.top/posts/buaa%E5%A4%8F%E4%BB%A4%E8%90%A5%E8%AE%B0/</link>
      <pubDate>Mon, 12 Jul 2021 21:45:48 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/buaa%E5%A4%8F%E4%BB%A4%E8%90%A5%E8%AE%B0/</guid>
      <description></description>
    </item>
	  
    <item>
      <title>BMP-FS</title>
      <link>https://rqdmap.top/posts/bmp-fs/</link>
      <pubDate>Fri, 28 May 2021 20:14:56 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/bmp-fs/</guid>
      <description>&lt;p&gt;BMP文件格式初探&lt;/p&gt;
&lt;p&gt;实现BMP文件的放缩&lt;/p&gt;
&lt;p&gt;搜索资料时找到，笑死。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;此为课程设计的第四题,这道题体现了大作业的精髓:在抄中知道，在抄中学习，在抄中苟且。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h1 id=&#34;bmp-文件结构&#34;&gt;BMP 文件结构&lt;/h1&gt;
&lt;p&gt;一般的情况如下所示，摘自

  
    
  

&lt;a href=&#34;https://en.wikipedia.org/wiki/BMP_file_format#File_structure&#34; class=external-link &gt;wiki&lt;/a&gt;&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Structure name&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Optional&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Size&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Purpose&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Comments&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Bitmap file header&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;No&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;14 bytes&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;To store general information about the bitmap image file&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Not needed after the file is loaded in memory&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;DIB header&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;No&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Fixed-size (7 different versions exist)&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;To store detailed information about the bitmap image and define the pixel format&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Immediately follows the Bitmap file header&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Extra bit masks&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Yes&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;3 or 4 

  
    
  

&lt;a href=&#34;https://en.wikipedia.org/wiki/DWORD&#34; class=external-link &gt;DWORDs&lt;/a&gt;[

  
    
  

&lt;a href=&#34;https://en.wikipedia.org/wiki/BMP_file_format#cite_note-AlphaBitFields-6&#34; class=external-link &gt;6]&lt;/a&gt; (12 or 16 bytes)&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;To define the pixel format&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Present only in case the DIB header is the BITMAPINFOHEADER and the Compression Method member is set to either BI_BITFIELDS or BI_ALPHABITFIELDS&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Color table&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Semi-optional&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Variable size&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;To define colors used by the bitmap image data (Pixel array)&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Mandatory for 

  
    
  

&lt;a href=&#34;https://en.wikipedia.org/wiki/Color_depth&#34; class=external-link &gt;color depths&lt;/a&gt; ≤ 8 bits&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Gap1&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Yes&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Variable size&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Structure alignment&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;An artifact of the File offset to Pixel array in the Bitmap file header&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Pixel array&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;No&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Variable size&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;To define the actual values of the pixels&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;The pixel format is defined by the DIB header or Extra bit masks. Each row in the Pixel array is padded to a multiple of 4 bytes in size&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Gap2&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Yes&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Variable size&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Structure alignment&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;An artifact of the ICC profile data offset field in the DIB header&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;ICC color profile&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Yes&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Variable size&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;To define the color profile for color management&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Can also contain a path to an external file containing the color profile. When loaded in memory as &amp;ldquo;non-packed DIB&amp;rdquo;, it is located between the color table and Gap1.[

  
    
  

&lt;a href=&#34;https://en.wikipedia.org/wiki/BMP_file_format#cite_note-DIBHeaderTypes-7&#34; class=external-link &gt;7]&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;一般来说，现在获取到的BMP文件的DIB头都是第五代(BITMAPV5HEADER)，长124字节；但是针对本实验而言，只需要极少的一些信息，因而只保留40字节，剩余84字节读进来不与使用。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>qko-gym</title>
      <link>https://rqdmap.top/acm/qko-gym/</link>
      <pubDate>Fri, 02 Apr 2021 21:10:37 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/qko-gym/</guid>
      <description>&lt;h1 id=&#34;day1&#34;&gt;Day1&lt;/h1&gt;
&lt;h2 id=&#34;hdu6643&#34;&gt;

  
    
  

&lt;a href=&#34;https://vjudge.net/contest/318115#problem/J&#34; class=external-link &gt;hdu6643&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;因为例题不仅有点分治还涉及到了树上依赖背包的算法，才发现自己并不太会树形背包的若干优化算法，故学习。&lt;/p&gt;
&lt;h3 id=&#34;树形背包&#34;&gt;树形背包&lt;/h3&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;https://www.acwing.com/problem/content/description/10/&#34; class=external-link &gt;模板题&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;给出一颗依赖树，询问总重量限定下可能获得的最大价值。&lt;/p&gt;
&lt;p&gt;物品的数量和重量的限制均不超过100&lt;/p&gt;
&lt;p&gt;有不同的做法，复杂度也不同。&lt;/p&gt;
&lt;h4 id=&#34;向上合并&#34;&gt;向上合并&lt;/h4&gt;
&lt;p&gt;随意采取$O(nm^2)$的算法即可在树上合并。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>arc-116</title>
      <link>https://rqdmap.top/acm/arc-116/</link>
      <pubDate>Sun, 28 Mar 2021 21:54:52 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/arc-116/</guid>
      <description>&lt;p&gt;&lt;del&gt;自以为A了一道精妙的DP题结果被第二道同样思想的DP卡死&lt;/del&gt;&lt;/p&gt;
&lt;h1 id=&#34;d-总和给定下进行nim必败态计数&#34;&gt;D 总和给定下进行NIM必败态计数&lt;/h1&gt;
&lt;p&gt;给出n、m，表示总共有n堆可空石堆$ {a_i}$，要求满足$\sum a_i = m, \bigoplus a_i=0$，查询这样的序列的个数。&lt;/p&gt;
&lt;p&gt;感觉上可以称之为非常经典的题目。&lt;/p&gt;
&lt;p&gt;设置dp状态：dp[i]表示n堆石子和为i，异或和为0的序列数量。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>linux多线程</title>
      <link>https://rqdmap.top/posts/linux%E5%A4%9A%E7%BA%BF%E7%A8%8B/</link>
      <pubDate>Tue, 23 Mar 2021 12:45:36 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/linux%E5%A4%9A%E7%BA%BF%E7%A8%8B/</guid>
      <description>&lt;p&gt;在linux下，Pthread是一套通用的线程库，由POSIX提出，具有较好的移植性。&lt;/p&gt;
&lt;p&gt;使用头文件&lt;code&gt;&amp;lt;pthread.h&amp;gt;&lt;/code&gt;&lt;/p&gt;
&lt;h1 id=&#34;线程基本操作&#34;&gt;线程基本操作&lt;/h1&gt;
&lt;h2 id=&#34;线程的创建与退出&#34;&gt;线程的创建与退出&lt;/h2&gt;
&lt;h3 id=&#34;pthead_create&#34;&gt;pthead_create&lt;/h3&gt;






&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-0370b2a133ddb699b88b60a1912fd8ce-0-1774547726955&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    c
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-0370b2a133ddb699b88b60a1912fd8ce-0-1774547726955&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-c&#34; data-lang=&#34;c&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;pthread_create&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;pthread_t&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;thread&lt;/span&gt;, &lt;span style=&#34;color:#b00040&#34;&gt;pthread_attr_t&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; attr, &lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt;start_routine)(&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt;), &lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt;arg);&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;传入参数：thread为线程标识符，attr为线程属性设置，start_routine为线程函数起始地址，arg为传给start_routine的参数。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>Linux 下的 socket 编程</title>
      <link>https://rqdmap.top/posts/socket/</link>
      <pubDate>Tue, 23 Mar 2021 12:45:29 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/socket/</guid>
      <description>&lt;h1 id=&#34;基础知识&#34;&gt;基础知识&lt;/h1&gt;
&lt;h2 id=&#34;socket常用函数&#34;&gt;socket常用函数&lt;/h2&gt;
&lt;h3 id=&#34;socket&#34;&gt;socket&lt;/h3&gt;
&lt;p&gt;domain指定协议族，type指定socket类型，protocol指定协议（为0时自动选择type类型对应的默认协议）&lt;/p&gt;






&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-27a56af481d7472be13390d8bd56ffed-0-1774547727872&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    c
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-27a56af481d7472be13390d8bd56ffed-0-1774547727872&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-c&#34; data-lang=&#34;c&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;socket&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; domain, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; type, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; protocol);&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;返回值大于0成功；-1失败，错误类型保存在全局变量errno中。&lt;/p&gt;
&lt;h3 id=&#34;bind&#34;&gt;bind&lt;/h3&gt;
&lt;p&gt;分配地址族中的特地地址给socket
sockfd为socket描述字，通过socket函数的返回值确定
addr指向绑定给sockfd的地址，根据socket创建时协议族的不同而不同。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>gym-102956</title>
      <link>https://rqdmap.top/acm/gym-102956/</link>
      <pubDate>Sun, 21 Feb 2021 17:16:43 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/gym-102956/</guid>
      <description></description>
    </item>
	  
    <item>
      <title>线段树扩展</title>
      <link>https://rqdmap.top/acm/%E7%BA%BF%E6%AE%B5%E6%A0%91%E6%89%A9%E5%B1%95/</link>
      <pubDate>Thu, 18 Feb 2021 16:42:07 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/%E7%BA%BF%E6%AE%B5%E6%A0%91%E6%89%A9%E5%B1%95/</guid>
      <description></description>
    </item>
	  
    <item>
      <title>edu-104-div2</title>
      <link>https://rqdmap.top/acm/edu-104-div2/</link>
      <pubDate>Tue, 16 Feb 2021 01:05:12 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/edu-104-div2/</guid>
      <description>&lt;p&gt;被set爆锤的一场&lt;/p&gt;
&lt;p&gt;如果自定义了比较符，那么应该要仔细的审查&lt;strong&gt;比较符的定义&lt;/strong&gt;是否符合预期！特别是&lt;strong&gt;两个对象相等&lt;/strong&gt;的情况！&lt;/p&gt;
&lt;p&gt;不然在进行set.erase()/set.insert()时会出现头de烂都看不出来的的bug&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>CF-699-div2</title>
      <link>https://rqdmap.top/acm/cf-699-div2/</link>
      <pubDate>Sat, 06 Feb 2021 19:59:44 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/cf-699-div2/</guid>
      <description></description>
    </item>
	  
    <item>
      <title>点分树</title>
      <link>https://rqdmap.top/acm/%E7%82%B9%E5%88%86%E6%A0%91/</link>
      <pubDate>Fri, 05 Feb 2021 18:27:17 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/%E7%82%B9%E5%88%86%E6%A0%91/</guid>
      <description>&lt;p&gt;&lt;strong&gt;

  
    
  

&lt;a href=&#34;https://www.luogu.com.cn/problem/P6329&#34; class=external-link &gt;P6329 点分树模版 震波&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>点分治</title>
      <link>https://rqdmap.top/acm/%E7%82%B9%E5%88%86%E6%B2%BB/</link>
      <pubDate>Mon, 01 Feb 2021 19:11:48 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/%E7%82%B9%E5%88%86%E6%B2%BB/</guid>
      <description></description>
    </item>
	  
    <item>
      <title>cdq初步</title>
      <link>https://rqdmap.top/acm/cdq%E5%88%9D%E6%AD%A5/</link>
      <pubDate>Mon, 01 Feb 2021 18:16:42 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/cdq%E5%88%9D%E6%AD%A5/</guid>
      <description>&lt;p&gt;cdq分治 三维偏序问题&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2020-2021Brazil-Subregional-Programming-Contest</title>
      <link>https://rqdmap.top/acm/2020-2021brazil-subregional-programming-contest/</link>
      <pubDate>Thu, 28 Jan 2021 21:51:34 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2020-2021brazil-subregional-programming-contest/</guid>
      <description></description>
    </item>
	  
    <item>
      <title>poj-1222</title>
      <link>https://rqdmap.top/acm/poj-1222/</link>
      <pubDate>Mon, 18 Jan 2021 21:56:04 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/poj-1222/</guid>
      <description>&lt;p&gt;给出一个5*6的01矩阵，每按一个格点就会将该格点及其4个方向上的格点（如果有的话）数值翻转，试给出一个方案使得最终所有格点均为0.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2021-XDU-寒假训练</title>
      <link>https://rqdmap.top/acm/2021-xdu-%E5%AF%92%E5%81%87%E8%AE%AD%E7%BB%83/</link>
      <pubDate>Sun, 17 Jan 2021 15:47:57 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2021-xdu-%E5%AF%92%E5%81%87%E8%AE%AD%E7%BB%83/</guid>
      <description></description>
    </item>
	  
    <item>
      <title>块状DS</title>
      <link>https://rqdmap.top/acm/%E5%9D%97%E7%8A%B6ds/</link>
      <pubDate>Sat, 16 Jan 2021 14:08:28 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/%E5%9D%97%E7%8A%B6ds/</guid>
      <description></description>
    </item>
	  
    <item>
      <title>2020数据库实验</title>
      <link>https://rqdmap.top/posts/2020%E6%95%B0%E6%8D%AE%E5%BA%93%E5%AE%9E%E9%AA%8C/</link>
      <pubDate>Fri, 15 Jan 2021 23:04:14 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/2020%E6%95%B0%E6%8D%AE%E5%BA%93%E5%AE%9E%E9%AA%8C/</guid>
      <description>&lt;p&gt;前端使用html，后台使用mysql数据库，使用php处理数据库，完成数据库课程的学籍管理系统大作业。&lt;/p&gt;
&lt;p&gt;特此记录，有机会的话还是希望学习一番全栈的内容。&lt;/p&gt;
&lt;p&gt;&lt;del&gt;别的班好像做的都绘声绘色的，我们班验收者则寥寥，我太菜了&lt;/del&gt;&lt;/p&gt;
&lt;h1 id=&#34;前台html服务&#34;&gt;前台html服务&lt;/h1&gt;
&lt;p&gt;写的非常丑陋，很多冗余的代码，自己确实完全是个门外汉qaq&lt;/p&gt;
&lt;p&gt;&lt;del&gt;没有css 我不会&lt;/del&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>CF-edu102</title>
      <link>https://rqdmap.top/acm/cf-edu102/</link>
      <pubDate>Fri, 15 Jan 2021 20:03:50 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/cf-edu102/</guid>
      <description>&lt;p&gt;&lt;strong&gt;

  
    
  

&lt;a href=&#34;https://codeforces.ml/contest/1473&#34; class=external-link &gt;Educational Codeforces Round 102 (Rated for Div. 2)&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>微信小程序</title>
      <link>https://rqdmap.top/posts/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F/</link>
      <pubDate>Mon, 07 Dec 2020 23:44:05 +0000</pubDate>
      
      <guid>https://rqdmap.top/posts/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F/</guid>
      <description>&lt;p&gt;记一次微信小程序的搭建过程。&lt;/p&gt;
&lt;p&gt;前端wxml+wxss+js，后端apache2+php+mysql&lt;/p&gt;
&lt;p&gt;尽管为了完成微信小程序的基本功能只需要略知上述内容的皮毛即可，但是从零开始仍然是过程坎坷，花费了许多夜晚才略有成效；故特此记录。&lt;/p&gt;
&lt;!-- more--&gt;
&lt;h2 id=&#34;后端apache服务器的配置&#34;&gt;后端apache服务器的配置&lt;/h2&gt;
&lt;h3 id=&#34;apache2&#34;&gt;apache2&lt;/h3&gt;
&lt;p&gt;最初不知道从哪里安装了一个不带有&lt;code&gt;mysqli&lt;/code&gt;库的apache2，导致我顶着超长的延迟在服务器修了一年还是不知道怎么搞出来。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2020-ccpc-weihai</title>
      <link>https://rqdmap.top/acm/2020-ccpc-weihai/</link>
      <pubDate>Sat, 21 Nov 2020 22:05:14 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2020-ccpc-weihai/</guid>
      <description>&lt;h2 id=&#34;g-线段树-区间修改取模区间哈希和查询&#34;&gt;G 线段树 区间修改、取模，区间哈希和查询&lt;/h2&gt;
&lt;p&gt;需要维护一个支持区间加1并对固定模数取模、区间哈希查询的线段树&lt;/p&gt;
&lt;p&gt;开局就想写的一道题，写到最后艰难调出来后wa7，最终放弃上机辅助队友看别的题&lt;/p&gt;
&lt;p&gt;晚上回去又调了很久，发现了几个错误&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;线段树哈希写错了，在求哈希和的时候不像普通的线段树区间和一样，查询哈希和时查询的区间[L, R]是需要&lt;strong&gt;动态变化&lt;/strong&gt;的，必须保证&lt;code&gt;L&lt;/code&gt;被不断地截断，才能保证算法的正确性&lt;/li&gt;
&lt;li&gt;眼睛比较瞎，前缀和pre[]对M(65536)取模了&lt;/li&gt;
&lt;li&gt;最开始的purify(将那些超过65536的位置取模)写挫了，在&lt;strong&gt;终止条件(l == r)之前就调用了down函数&lt;/strong&gt;。调了一年才发现原来是这里有问题：如果在终止条件之前就调用down函数，这会导致地址的越界访问。因为st只开了4倍空间，所以如果在那种边角叶子结点（在满二叉树上多一个节外生枝的结构）仍然尝试down下去，就会访问到8倍的位置！在CF居然没有发生RE报警，以至于我一度怀疑是自己算法写错了，其实是空间的计算错误导致了UKE。&lt;/li&gt;
&lt;/ul&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-c564ef2bcb3e6c10f639c91ac6ab7818-0-1774547727105&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-c564ef2bcb3e6c10f639c91ac6ab7818-0-1774547727105&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-c564ef2bcb3e6c10f639c91ac6ab7818-0-1774547727105&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define ls (p &amp;lt;&amp;lt; 1)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  2&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define rs ((p &amp;lt;&amp;lt; 1) | 1)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define mid ((l + r) &amp;gt;&amp;gt; 1)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  4&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  5&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;using&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;namespace&lt;/span&gt; std;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  6&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; maxn &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;5e5&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  7&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; M &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;65536&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  8&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  9&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; pp &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;999983&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 10&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; mod &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1000237529&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 11&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 12&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; a[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 13&lt;/span&gt;&lt;span&gt;ll tag1[maxn &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;], st2[maxn &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;], st[maxn &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 14&lt;/span&gt;&lt;span&gt;ll po[maxn], pre[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 15&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 16&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;up&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; p, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; l, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; r){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 17&lt;/span&gt;&lt;span&gt;    st[p] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; st[ls] &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; st[rs] &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; po[mid &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; l &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; mod; st[p] &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; mod;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 18&lt;/span&gt;&lt;span&gt;    st2[p] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; max(st2[ls], st2[rs]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 19&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 20&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 21&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;build&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; p, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; l, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; r, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; k, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; x){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 22&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(l &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; r &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; l &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; k){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 23&lt;/span&gt;&lt;span&gt;        st[p] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; st2[p] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; x;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 24&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 25&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 26&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(k &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; mid) build(ls, l, mid, k, x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 27&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; build(rs, mid &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, r, k, x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 28&lt;/span&gt;&lt;span&gt;    up(p, l, r);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 29&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 30&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 31&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;down&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; p, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; l, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; r){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 32&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(tag1[p]){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 33&lt;/span&gt;&lt;span&gt;        tag1[ls] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; tag1[p];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 34&lt;/span&gt;&lt;span&gt;        tag1[rs] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; tag1[p];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 35&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 36&lt;/span&gt;&lt;span&gt;        st[ls] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; pre[mid &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; l] &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; tag1[p] &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; mod; st[ls] &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; mod;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 37&lt;/span&gt;&lt;span&gt;        st[rs] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; pre[r &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; mid &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; tag1[p] &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; mod; st[rs] &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; mod;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 38&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 39&lt;/span&gt;&lt;span&gt;        st2[ls] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; tag1[p];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 40&lt;/span&gt;&lt;span&gt;        st2[rs] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; tag1[p];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 41&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 42&lt;/span&gt;&lt;span&gt;        tag1[p] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 43&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 44&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 45&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 46&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;update&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; p, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; l, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; r, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; L, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; R){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 47&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(L &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; l &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; r &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; R){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 48&lt;/span&gt;&lt;span&gt;        st[p] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; pre[r &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; l]; st[p] &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; mod;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 49&lt;/span&gt;&lt;span&gt;        st2[p]&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;; tag1[p]&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 50&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 51&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 52&lt;/span&gt;&lt;span&gt;    down(p, l, r);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 53&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(L &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; mid) udpate(ls, l, mid, L, R);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 54&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(R &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; mid) update(rs, mid &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, r, L ,R);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 55&lt;/span&gt;&lt;span&gt;    up(p, l, r);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 56&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 57&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 58&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;purify&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; p, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; l, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; r){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 59&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(st2[p] &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; M) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 60&lt;/span&gt;&lt;span&gt;    down(p, l, r);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 61&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(l &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; r){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 62&lt;/span&gt;&lt;span&gt;        st[p] &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; M; st2[p] &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; M;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 63&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 64&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 65&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 66&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(st2[ls] &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;=&lt;/span&gt; M) purify(ls, l, mid);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 67&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(st2[rs] &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;=&lt;/span&gt; M) purify(rs, mid &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, r);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 68&lt;/span&gt;&lt;span&gt;    up(p, l, r);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 69&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 70&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 71&lt;/span&gt;&lt;span&gt;ll &lt;span style=&#34;color:#00f&#34;&gt;hsh&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; p, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; l, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; r, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; L, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; R){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 72&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(L &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; l &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; r &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; R) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; st[p];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 73&lt;/span&gt;&lt;span&gt;    down(p, l, r);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 74&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 75&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(R &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; mid) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; hsh(ls, l, mid, L, R);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 76&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(L &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; mid) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; hsh(rs, mid &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, r, L, R);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 77&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 78&lt;/span&gt;&lt;span&gt;        ll ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; hsh(ls, l, mid, L, mid);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 79&lt;/span&gt;&lt;span&gt;        ans &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; hsh(rs, mid &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, r, mid &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, R) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; po[mid &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; L &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; mod;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 80&lt;/span&gt;&lt;span&gt;        ans &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; mod;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 81&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ans;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 82&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 83&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 84&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 85&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;(){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 86&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//   Fastin;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 87&lt;/span&gt;&lt;span&gt;    po[&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 88&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; maxn; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) po[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; po[i &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1ll&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; pp &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; mod;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 89&lt;/span&gt;&lt;span&gt;    pre[&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 90&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; maxn; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) pre[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; pre[i &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; po[i], pre[i] &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; mod;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 91&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 92&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n, m; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d %d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;n, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;m);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 93&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 94&lt;/span&gt;&lt;span&gt;        scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, a &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; i);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 95&lt;/span&gt;&lt;span&gt;        build(&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, n, i, a[i]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 96&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 97&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 98&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(m&lt;span style=&#34;color:#666&#34;&gt;--&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 99&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; op; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;op);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;100&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(op &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;101&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; l, r; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d %d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;l, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;r);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;102&lt;/span&gt;&lt;span&gt;            update(&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, n, l, r);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;103&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;104&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;105&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; l, r, k; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d %d %d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;l, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;r, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;k);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;106&lt;/span&gt;&lt;span&gt;            purify(&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, n);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;107&lt;/span&gt;&lt;span&gt;            
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;108&lt;/span&gt;&lt;span&gt;            ll res1 &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; hsh(&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, n, l, l &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; k &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;109&lt;/span&gt;&lt;span&gt;            ll res2 &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; hsh(&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, n, r, r &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; k &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;110&lt;/span&gt;&lt;span&gt;            puts(res1 &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; res2&lt;span style=&#34;color:#666&#34;&gt;?&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;yes&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;no&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;111&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;112&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;113&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;114&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;115&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;l-分组背包--lcm&#34;&gt;L 分组背包 &amp;amp; LCM&lt;/h2&gt;
&lt;p&gt;给出n，构造某种拆分$p_1+p_2+&amp;hellip;+p_k = n$，使得$lcm(p_1, p_2, &amp;hellip;, p_k)$最大。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>opencup-gym102391</title>
      <link>https://rqdmap.top/acm/opencup-gym102391/</link>
      <pubDate>Wed, 11 Nov 2020 20:15:51 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/opencup-gym102391/</guid>
      <description>&lt;h2 id=&#34;j-rqd-igva树-树上dsu&#34;&gt;J &lt;del&gt;RQD-IGVA树&lt;/del&gt; 树上DSU&lt;/h2&gt;
&lt;p&gt;最开始以为险段长度跟n无关，所以加了根[1, n]的线段进去就WA到死，后来改成[1, 1000000]即可。&lt;/p&gt;
&lt;p&gt;大概是叫dsu on tree，可以处理一些与子树有关的询问，复杂度Onlogn&lt;/p&gt;
&lt;p&gt;&lt;del&gt;可惜IGVA不知道场上什么地方写挫了 场后10分钟A了&lt;/del&gt;&lt;/p&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-774eb7ef7441fdc07afad54f1b114305-0-1774547727115&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-774eb7ef7441fdc07afad54f1b114305-0-1774547727115&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-774eb7ef7441fdc07afad54f1b114305-0-1774547727115&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; maxn &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;3e5&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 2&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n, w[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 4&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;struct&lt;/span&gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;star&lt;/span&gt;{&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; to, next;};
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 5&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; head[maxn], top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 6&lt;/span&gt;&lt;span&gt;star edge[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 7&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;add&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; v){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 8&lt;/span&gt;&lt;span&gt;    edge[top].to &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; v;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 9&lt;/span&gt;&lt;span&gt;    edge[top].next &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[u];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;10&lt;/span&gt;&lt;span&gt;    head[u] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; top&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;11&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;12&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;13&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;struct&lt;/span&gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;NODE&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;14&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; l, r, w;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;15&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;bool&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;operator&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; (&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; NODE &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;b) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;16&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(l &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; b.l) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; l &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; b.l;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;17&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; r &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; b.r;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;18&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;19&lt;/span&gt;&lt;span&gt;};
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;20&lt;/span&gt;&lt;span&gt;vector&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;NODE&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; vec;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;21&lt;/span&gt;&lt;span&gt;priority_queue&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;ll&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; pq[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;22&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; conv[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;23&lt;/span&gt;&lt;span&gt;vector&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;ll&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; temp;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;24&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;25&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//合并边i和边j的优先队列，放到i里面
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;26&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;merge&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i , &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; j){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;27&lt;/span&gt;&lt;span&gt;    temp.clear();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;28&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(pq[conv[i]].size() &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; pq[conv[j]].size()) swap(conv[i], conv[j]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;29&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;30&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;pq[conv[j]].empty()){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;31&lt;/span&gt;&lt;span&gt;        temp.push_back(pq[conv[i]].top() &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; pq[conv[j]].top());
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;32&lt;/span&gt;&lt;span&gt;        pq[conv[i]].pop(); pq[conv[j]].pop();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;33&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;34&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;auto&lt;/span&gt; &lt;span style=&#34;color:#a0a000&#34;&gt;x&lt;/span&gt;: temp) pq[conv[i]].push(x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;35&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;36&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;37&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;sove&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; now){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;38&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[now]; &lt;span style=&#34;color:#666&#34;&gt;~&lt;/span&gt;i; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; edge[i].next){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;39&lt;/span&gt;&lt;span&gt;        sove(edge[i].to);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;40&lt;/span&gt;&lt;span&gt;        merge(now, edge[i].to);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;41&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;42&lt;/span&gt;&lt;span&gt;    pq[conv[now]].push(vec[now].w);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;43&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;44&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;45&lt;/span&gt;&lt;span&gt;stack&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; sta;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;46&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;47&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;(){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;48&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;// Fastin;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;49&lt;/span&gt;&lt;span&gt;    clr(head, &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;50&lt;/span&gt;&lt;span&gt;    scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;n);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;51&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;52&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u, v, w; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d %d %d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;u, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;v, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;w);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;53&lt;/span&gt;&lt;span&gt;        vec.push_back({u, v, w});
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;54&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;55&lt;/span&gt;&lt;span&gt;    vec.push_back({&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;1000000&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;56&lt;/span&gt;&lt;span&gt;    sort(vec.begin(), vec.end());
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;57&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;58&lt;/span&gt;&lt;span&gt;    sta.push(&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;59&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;60&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; sta.top();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;61&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;(vec[top].l &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; vec[i].l &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; vec[i].r &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; vec[top].r)){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;62&lt;/span&gt;&lt;span&gt;            sta.pop(); 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;63&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(sta.empty()){&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);};
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;64&lt;/span&gt;&lt;span&gt;            top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; sta.top();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;65&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;66&lt;/span&gt;&lt;span&gt;        add(top, i); sta.push(i);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;67&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;68&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;69&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(itn i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) conv[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; i;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;70&lt;/span&gt;&lt;span&gt;    sove(&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;71&lt;/span&gt;&lt;span&gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;72&lt;/span&gt;&lt;span&gt;    ll ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;73&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;74&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;pq[conv[&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;]].empty()){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;75&lt;/span&gt;&lt;span&gt;            ans &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; pq[conv[&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;]].top(); pq[conv[&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;]].pop();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;76&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;77&lt;/span&gt;&lt;span&gt;        printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%lld &amp;#34;&lt;/span&gt;, ans);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;78&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;79&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;80&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;81&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;i-最小直径生成树-mdst&#34;&gt;I 最小直径生成树 MDST&lt;/h2&gt;
&lt;p&gt;为了求解MDST，就需要求解绝对中心所在的位置。绝对中心不一定在节点上，可以在边上。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>chanllage</title>
      <link>https://rqdmap.top/acm/chanllage/</link>
      <pubDate>Tue, 03 Nov 2020 22:21:00 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/chanllage/</guid>
      <description>&lt;p&gt;有一些有趣但是大概需要高深数学知识的计算机问题悬而未决，特此记录。&lt;/p&gt;
&lt;h3 id=&#34;张帆猜想&#34;&gt;张帆猜想&lt;/h3&gt;
&lt;h3 id=&#34;哈希冲突概率&#34;&gt;

  
    
  

&lt;a href=&#34;http://rqdmap.top/2020/10/28/2020-ccpc-qinhuangdao/#more&#34; class=external-link &gt;哈希冲突概率&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;有等式$(a_1^k+a_2^k+&amp;hellip;+a_n^k) % 2^{64}=(b_1^k+b_2^k+&amp;hellip;+b_n^k)% 2^{64}$，&lt;/p&gt;
&lt;p&gt;定义“冲突“为：满足上述等式的两个多重集合{an}{bn}不完全相同。&lt;/p&gt;
&lt;p&gt;希望说明：当n为1e5的级别时，k=2时冲突概率极高，而当k&amp;gt;=3时冲突的概率就会降低到一个可以接受的程度。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2020-ccpc-qinhuangdao</title>
      <link>https://rqdmap.top/acm/2020-ccpc-qinhuangdao/</link>
      <pubDate>Wed, 28 Oct 2020 19:23:04 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2020-ccpc-qinhuangdao/</guid>
      <description>&lt;h2 id=&#34;k-树dp&#34;&gt;K 树dp&lt;/h2&gt;
&lt;p&gt;场上想了一个不太对的排序办法，真正的排序方法应该是将子树按照最深深度从低到高进行排序。然后随便维护一个dp数组表示从根节点派遣若干士兵遍历完i子树所需要的最小时间，每次尝试用子树的结果更新他们共同父节点的信息：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;如果某节点是叶子，那么用其深度作为结果；&lt;/li&gt;
&lt;li&gt;如果某节点不是叶子，将子树按照上述顺序排序后，考虑子树v1可能对v2造成的贡献：当height[v1] + 2 &amp;lt;= dep[v2]，那么从v1的士兵原路返回会比重新派遣一个人过来更优，将结果减去差值，不断重复更新。每次只需要考虑子树$i$对子树${i + 1}$的贡献，这是因为子树序列是单调的，一旦到某个位置后重新派遣更优，之后的所有位置也一定是重新派遣更优。&lt;/li&gt;
&lt;/ul&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-3aaf80fb11db854aeaf150e3c0f96789-0-1774547727128&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-3aaf80fb11db854aeaf150e3c0f96789-0-1774547727128&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-3aaf80fb11db854aeaf150e3c0f96789-0-1774547727128&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; manx &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1e6&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 2&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;struct&lt;/span&gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;star&lt;/span&gt;{&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; to, next;};
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 4&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; head[maxn], top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 5&lt;/span&gt;&lt;span&gt;star edge[maxn &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 6&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 7&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;add&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; v){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 8&lt;/span&gt;&lt;span&gt;    edge[top].to &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; v;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 9&lt;/span&gt;&lt;span&gt;    edge[top].next &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[u];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;10&lt;/span&gt;&lt;span&gt;    head[u] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; top&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;11&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;12&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;13&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; dep[maxn], height[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;14&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;dfs&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; x, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; par){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;15&lt;/span&gt;&lt;span&gt;    height[x] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;16&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[x]; &lt;span style=&#34;color:#666&#34;&gt;~&lt;/span&gt;i; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; edge[i].next){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;17&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; to &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; edge[i].to; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(to &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; par) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;continue&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;18&lt;/span&gt;&lt;span&gt;        dep[to] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; dep[x] &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;19&lt;/span&gt;&lt;span&gt;        dfs(to, x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;20&lt;/span&gt;&lt;span&gt;        height[x] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; max(height[x], height[to] &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;21&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;22&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;23&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;24&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//从根结点派遣若干人，遍历完i子树所需要的最小代价即为dp[i]
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;25&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;bool&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;cmp&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; x, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; y){&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; height[x] &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; height[y];}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;26&lt;/span&gt;&lt;span&gt;ll dp[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;27&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;sove&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; now, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; par){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;28&lt;/span&gt;&lt;span&gt;    vector&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; vec;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;29&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[now]; &lt;span style=&#34;color:#666&#34;&gt;~&lt;/span&gt;i; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; edge[i].next){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;30&lt;/span&gt;&lt;span&gt;        itn to &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; edge[i].to; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(to &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; par) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;continue&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;31&lt;/span&gt;&lt;span&gt;        vec.push_back(to);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;32&lt;/span&gt;&lt;span&gt;        sove(to, now);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;33&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;34&lt;/span&gt;&lt;span&gt;    sort(vec.begin(), vec.end(), cmp);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;35&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(vec.empty()) dp[now] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; dep[now];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;36&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;37&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; (&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;)vec.size();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;38&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;auto&lt;/span&gt; &lt;span style=&#34;color:#a0a000&#34;&gt;x&lt;/span&gt;: vec) dp[now] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; dp[x];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;39&lt;/span&gt;&lt;span&gt;        fro(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; top; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;40&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(height[vec[i &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;]] &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; dep[vec[i]]){ 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;41&lt;/span&gt;&lt;span&gt;                dp[now] &lt;span style=&#34;color:#666&#34;&gt;-=&lt;/span&gt; dep[vec[i]] &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; height[vec[i &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;]] &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;42&lt;/span&gt;&lt;span&gt;            }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;43&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;44&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;45&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;46&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;47&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;(){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;48&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;// Fastin;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;49&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; _; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;_); fro(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; __ &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; __ &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; _; __&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;50&lt;/span&gt;&lt;span&gt;        top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;51&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;n);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;52&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;53&lt;/span&gt;&lt;span&gt;            dp[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; height[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; dep[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;54&lt;/span&gt;&lt;span&gt;            head[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;55&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;56&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;57&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; x; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;58&lt;/span&gt;&lt;span&gt;            add(x, i); add(i, x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;59&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;60&lt;/span&gt;&lt;span&gt;        dfs(&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;61&lt;/span&gt;&lt;span&gt;        sove(&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;62&lt;/span&gt;&lt;span&gt;        printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;Case #%d: %d&lt;/span&gt;&lt;span style=&#34;color:#b62;font-weight:bold&#34;&gt;\n&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;, __, dp[&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;63&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;64&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;65&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;j-哈希与组合数学&#34;&gt;J 哈希与组合数学&lt;/h2&gt;
&lt;p&gt;感谢冯佬的指点qaq 不然我可能一年都调不出来这题&amp;hellip;sro flukehn&amp;hellip;.&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2019-SWERC</title>
      <link>https://rqdmap.top/acm/2019-swerc/</link>
      <pubDate>Sat, 17 Oct 2020 00:09:31 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2019-swerc/</guid>
      <description>&lt;p&gt;&lt;strong&gt;参考博客：&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;https://www.cnblogs.com/heyuhhh/p/12941654.html&#34; class=external-link &gt;https://www.cnblogs.com/heyuhhh/p/12941654.html&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;k-图上的路径存在问题--建反图进行染色&#34;&gt;K 图上的路径存在问题(?) -&amp;gt;建反图进行染色&lt;/h3&gt;
&lt;p&gt;建反图，用rot的每个邻点去对整张图染色，被染色的点就意味着可以走到该颜色所代表的邻点。我们允许每个点最多被染色两次，这是因为rot的邻点一旦被超过一个点染色，那么就一定不合法；所以对图中每个点而言，如果其被染色次数大于等于2，那么其出边所对应的一系列点的更新也已经都完成，再次染色增加染色次数没有任何意义，并不会改变“不合法”这一性质。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2019-icpc-taipei</title>
      <link>https://rqdmap.top/acm/2019-icpc-taipei/</link>
      <pubDate>Sun, 04 Oct 2020 22:07:24 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2019-icpc-taipei/</guid>
      <description>&lt;h2 id=&#34;i-已知两数差求所有可能的原本的序列&#34;&gt;I 已知两数差，求所有可能的原本的序列&lt;/h2&gt;
&lt;p&gt;原序列长度小于等于62，序列值小于1000且两两不同。&lt;/p&gt;
&lt;p&gt;如果已经还原出了原序列中的$i$个值，那么除去这i个值两两的差之后，差值集合中最大的数便可以基本确定下来：这个数一定是原序列中的某个数与a[1] = 0或者a[n]作差得到的，这点由“最大”保证。&lt;/p&gt;
&lt;p&gt;那么检查这个最大的数出现的次数，如果次数超过2，则不满足两两不同的要求；如果次数为2，直接根据a[1], a[n]可以更新两个值进行原序列；如果次数仅为1，则需要分别递归考虑一番。&lt;/p&gt;</description>
    </item>
	    
    <item>
      <title>办公楼biu</title>
      <link>https://rqdmap.top/acm/%E5%8A%9E%E5%85%AC%E6%A5%BCbiu/</link>
      <pubDate>Fri, 04 Sep 2020 20:13:53 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/%E5%8A%9E%E5%85%AC%E6%A5%BCbiu/</guid>
      <description>&lt;p&gt;给出一张图，求出其补图所有联通块的个数及其大小。&lt;/p&gt;
&lt;h3 id=&#34;黑暗爆炸oj-1098&#34;&gt;

  
    
  

&lt;a href=&#34;https://darkbzoj.tk/problem/1098&#34; class=external-link &gt;黑暗爆炸OJ 1098&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;容易想到$O(n^2)$的算法：对于每一个点，枚举所有邻点打上标记，然后找那些没有被打上标记的点，将这些点加入到一个联通块中。&lt;/p&gt;
&lt;p&gt;如果使用链表，可以将复杂度优化到$O(n + m)$，非常的神奇。&lt;/p&gt;
&lt;p&gt;&lt;del&gt;本来是非常的神秘，后来qko学长给我讲了下就变得非常神奇了 orz&lt;/del&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>24point</title>
      <link>https://rqdmap.top/acm/24point/</link>
      <pubDate>Wed, 02 Sep 2020 22:31:00 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/24point/</guid>
      <description>&lt;p&gt;24点小游戏~&lt;/p&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-7a915cb5beab46425802f4f27cab65bc-0-1774547727172&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-7a915cb5beab46425802f4f27cab65bc-0-1774547727172&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-7a915cb5beab46425802f4f27cab65bc-0-1774547727172&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;iostream&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  2&lt;/span&gt;&lt;span&gt;      
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;algorithm&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  4&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;string&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  5&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;vector&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  6&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;stack&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  7&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;queue&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  8&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;set&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  9&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;map&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 10&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;unordered_map&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 11&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;unordered_set&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 12&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;random&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 13&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;chrono&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 14&lt;/span&gt;&lt;span&gt;     
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 15&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;cstdio&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 16&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;cstring&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 17&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;cmath&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 18&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;ctime&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 19&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;cstdlib&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 20&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;cassert&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 21&lt;/span&gt;&lt;span&gt;      
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 22&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define itn int
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 23&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define fro for
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 24&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define scnaf scanf
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 25&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define sacnf scanf
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 26&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define manx maxn
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 27&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define pritnf printf
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 28&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 29&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define Fastin freopen(&amp;#34;in.txt&amp;#34;, &amp;#34;r&amp;#34;, stdin)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 30&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define Fastout freopen(&amp;#34;out.txt&amp;#34;, &amp;#34;w&amp;#34;, stdout)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 31&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define min(a, b) ((a) &amp;lt; (b)? (a): (b))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 32&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define max(a, b) ((a) &amp;gt; (b)? (a): (b))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 33&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define lowbit(x) ((x) &amp;amp; (-x))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 34&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define ceil(n, p) (((n) +(p) - 1) / (p))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 35&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define DBG(x) (void)(cout &amp;lt;&amp;lt; &amp;#34;L&amp;#34; &amp;lt;&amp;lt; __LINE__ &amp;lt;&amp;lt; &amp;#34;: &amp;#34; &amp;lt;&amp;lt; #x &amp;lt;&amp;lt; &amp;#34; = &amp;#34; &amp;lt;&amp;lt;( x) &amp;lt;&amp;lt; &amp;#39;\n&amp;#39;)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 36&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define clr(a, x) memset((a), x, sizeof (a))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 37&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define TTT int __; scanf(&amp;#34;%d&amp;#34;, &amp;amp;__); while(__--)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 38&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;using&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;namespace&lt;/span&gt; std;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 39&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;typedef&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;long&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;long&lt;/span&gt; ll;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 40&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 41&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; a[&lt;span style=&#34;color:#666&#34;&gt;5&lt;/span&gt;], b[&lt;span style=&#34;color:#666&#34;&gt;5&lt;/span&gt;], p[&lt;span style=&#34;color:#666&#34;&gt;5&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 42&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 43&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;struct&lt;/span&gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;NODE&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 44&lt;/span&gt;&lt;span&gt;    string s; &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; w;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 45&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;bool&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;operator&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; (&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; NODE&lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt; b)&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt;{&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; s &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; b.s;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 46&lt;/span&gt;&lt;span&gt;};
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 47&lt;/span&gt;&lt;span&gt;set&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;NODE&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; s[&lt;span style=&#34;color:#666&#34;&gt;5&lt;/span&gt;][&lt;span style=&#34;color:#666&#34;&gt;5&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 48&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//处理[left, right]的值
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 49&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;sove&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; left, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; right){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 50&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(left &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; right) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 51&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(left &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; right){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 52&lt;/span&gt;&lt;span&gt;        NODE temp;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 53&lt;/span&gt;&lt;span&gt;        temp.s &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; to_string(a[left]); temp.w &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; a[left];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 54&lt;/span&gt;&lt;span&gt;        s[left][right].insert(temp);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 55&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 56&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 57&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; left; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; right &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 58&lt;/span&gt;&lt;span&gt;        sove(left, i); sove(i &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, right);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 59&lt;/span&gt;&lt;span&gt;        NODE temp;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 60&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;auto&lt;/span&gt; &lt;span style=&#34;color:#a0a000&#34;&gt;x&lt;/span&gt;: s[left][i]) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;auto&lt;/span&gt; &lt;span style=&#34;color:#a0a000&#34;&gt;y&lt;/span&gt;: s[i &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;][right]){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 61&lt;/span&gt;&lt;span&gt;            temp.s &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; x.s; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(left &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; i) temp.s &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;(&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; temp.s &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;)&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 62&lt;/span&gt;&lt;span&gt;            temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;+&amp;#34;&lt;/span&gt;; temp.w &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; x.w &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; y.w;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 63&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(i &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; right) temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;(&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; y.s &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;)&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 64&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; y.s;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 65&lt;/span&gt;&lt;span&gt;            s[left][right].insert(temp);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 66&lt;/span&gt;&lt;span&gt;            
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 67&lt;/span&gt;&lt;span&gt;            temp.s &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; x.s; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(left &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; i) temp.s &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;(&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; temp.s &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;)&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 68&lt;/span&gt;&lt;span&gt;            temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;-&amp;#34;&lt;/span&gt;; temp.w &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; x.w &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; y.w;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 69&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(i &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; right) temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;(&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; y.s &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;)&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 70&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; y.s;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 71&lt;/span&gt;&lt;span&gt;            s[left][right].insert(temp);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 72&lt;/span&gt;&lt;span&gt;            
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 73&lt;/span&gt;&lt;span&gt;            temp.s &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; x.s; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(left &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; i) temp.s &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;(&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; temp.s &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;)&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 74&lt;/span&gt;&lt;span&gt;            temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;*&amp;#34;&lt;/span&gt;; temp.w &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; x.w &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; y.w;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 75&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(i &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; right) temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;(&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; y.s &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;)&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 76&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; y.s;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 77&lt;/span&gt;&lt;span&gt;            s[left][right].insert(temp);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 78&lt;/span&gt;&lt;span&gt;            
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 79&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(y.w &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;continue&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 80&lt;/span&gt;&lt;span&gt;            temp.s &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; x.s; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(left &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; i) temp.s &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;(&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; temp.s &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;)&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 81&lt;/span&gt;&lt;span&gt;            temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;/&amp;#34;&lt;/span&gt;; temp.w &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; x.w &lt;span style=&#34;color:#666&#34;&gt;/&lt;/span&gt; y.w;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 82&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(i &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; right) temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;(&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; y.s &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;)&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 83&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; temp.s &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; y.s;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 84&lt;/span&gt;&lt;span&gt;            s[left][right].insert(temp);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 85&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 86&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 87&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 88&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 89&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 90&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; eps &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1e-6&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 91&lt;/span&gt;&lt;span&gt;set&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;string&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; ans;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 92&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 93&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;(){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 94&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//    Fastin;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 95&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;4&lt;/span&gt;; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) scnaf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, b &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; i);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 96&lt;/span&gt;&lt;span&gt;    p[&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; p[&lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;; p[&lt;span style=&#34;color:#666&#34;&gt;3&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;3&lt;/span&gt;; p[&lt;span style=&#34;color:#666&#34;&gt;4&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;4&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 97&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 98&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;do&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 99&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;5&lt;/span&gt;; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; j &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; j &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;5&lt;/span&gt;; j&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) s[i][j].clear();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;100&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;4&lt;/span&gt;; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) a[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; b[p[i]];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;101&lt;/span&gt;&lt;span&gt;        sove(&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;4&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;102&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;auto&lt;/span&gt; &lt;span style=&#34;color:#a0a000&#34;&gt;x&lt;/span&gt;: s[&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;][&lt;span style=&#34;color:#666&#34;&gt;4&lt;/span&gt;]) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(abs(x.w &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;24&lt;/span&gt;) &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; eps){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;103&lt;/span&gt;&lt;span&gt;            ans.insert(x.s);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;104&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;105&lt;/span&gt;&lt;span&gt;    }&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(next_permutation(p &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, p &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;5&lt;/span&gt;));
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;106&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;107&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(ans.empty()) puts(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;-1&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;108&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;auto&lt;/span&gt; &lt;span style=&#34;color:#a0a000&#34;&gt;s&lt;/span&gt;: ans) cout &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt; s &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#39;\n&amp;#39;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;109&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;110&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
    </item>
	  
    <item>
      <title>2019-XDU-onsite</title>
      <link>https://rqdmap.top/acm/2019-xdu-onsite/</link>
      <pubDate>Wed, 02 Sep 2020 20:10:45 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2019-xdu-onsite/</guid>
      <description>&lt;p&gt;1427 qko的宝可梦 （已补）&lt;/p&gt;
&lt;p&gt;1428 qko的串&lt;/p&gt;
&lt;p&gt;1429 qko的进化公式&lt;/p&gt;
&lt;p&gt;1430 qko的树&lt;/p&gt;
&lt;h2 id=&#34;1427-set对有序链的维护&#34;&gt;1427 set对有序链的维护&lt;/h2&gt;
&lt;p&gt;set中每个节点拥有最小攻击力和最大攻击力，保证set中一定满足严格的偏序关系，即保证两个元素之间一定有某元素的最大值全部小于另一个元素的最小值。&lt;/p&gt;
&lt;p&gt;初始将1号宝可梦插入到set中，然后遍历2-n宝可梦，通过lower_bound和upper_bound来获得set中“相等“的那些元素。这里的相等意味着不存在严格的偏序关系，那么也就意味着两者互相可以击败，从而这些元素都可以与第i个元素互相可达，应该合并成一个SCC。遍历所有这些相等的元素，将信息进行不断合并，最后将新元素再插入到set中，这样就可以保证set中的严格偏序关系，输出结果时将最后一个元素的个数输出即可。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2020-牛客多校-10</title>
      <link>https://rqdmap.top/acm/2020-%E7%89%9B%E5%AE%A2%E5%A4%9A%E6%A0%A1-10/</link>
      <pubDate>Tue, 25 Aug 2020 15:38:23 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2020-%E7%89%9B%E5%AE%A2%E5%A4%9A%E6%A0%A1-10/</guid>
      <description>&lt;h3 id=&#34;c-思维--树&#34;&gt;C 思维 &amp;amp; 树&lt;/h3&gt;
&lt;h4 id=&#34;c-namomo-2c&#34;&gt;C* 

  
    
  

&lt;a href=&#34;https://namomo.top:8081/contest/2/problem/C&#34; class=external-link &gt;Namomo 2C&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;区间减1，代价为长度的平方，问将区间操作为全0的最小代价和最大代价。&lt;/p&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-22c43958cbd2d5e74d17342a6e8d2f6e-0-1774547727178&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-22c43958cbd2d5e74d17342a6e8d2f6e-0-1774547727178&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-22c43958cbd2d5e74d17342a6e8d2f6e-0-1774547727178&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;iostream&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  2&lt;/span&gt;&lt;span&gt;      
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;algorithm&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  4&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;string&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  5&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;vector&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  6&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;stack&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  7&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;queue&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  8&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;set&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  9&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;map&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 10&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;unordered_map&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 11&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;unordered_set&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 12&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;random&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 13&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;chrono&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 14&lt;/span&gt;&lt;span&gt;     
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 15&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;cstdio&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 16&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;cstring&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 17&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;cmath&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 18&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;ctime&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 19&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;cstdlib&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 20&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;cassert&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 21&lt;/span&gt;&lt;span&gt;      
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 22&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define itn int
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 23&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define fro for
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 24&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define scnaf scanf
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 25&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define sacnf scanf
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 26&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define Fastin freopen(&amp;#34;in.txt&amp;#34;, &amp;#34;r&amp;#34;, stdin)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 27&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define Fastout freopen(&amp;#34;out.txt&amp;#34;, &amp;#34;w&amp;#34;, stdout)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 28&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define manx maxn
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 29&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define lowbit(x) ((x) &amp;amp; (-x))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 30&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define ceil(n, p) (((n) +(p) - 1) / (p))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 31&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define DBG(x) (void)(cout &amp;lt;&amp;lt; &amp;#34;L&amp;#34; &amp;lt;&amp;lt; __LINE__ &amp;lt;&amp;lt; &amp;#34;: &amp;#34; &amp;lt;&amp;lt; #x &amp;lt;&amp;lt; &amp;#34; = &amp;#34; &amp;lt;&amp;lt;( x) &amp;lt;&amp;lt; &amp;#39;\n&amp;#39;)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 32&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define clr(a, x) memset((a), x, sizeof (a))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 33&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define min(a, b) ((a) &amp;lt; (b)? (a): (b))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 34&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#define max(a, b) ((a) &amp;gt; (b)? (a): (b))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 35&lt;/span&gt;&lt;span&gt;     
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 36&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;using&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;namespace&lt;/span&gt; std;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 37&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;typedef&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;long&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;long&lt;/span&gt; ll;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 38&lt;/span&gt;&lt;span&gt;     
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 39&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;read&lt;/span&gt;(){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 40&lt;/span&gt;&lt;span&gt;   &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; ng&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;,x&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 41&lt;/span&gt;&lt;span&gt;   &lt;span style=&#34;color:#b00040&#34;&gt;char&lt;/span&gt; ch&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;getchar();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 42&lt;/span&gt;&lt;span&gt;   &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(;ch&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#39;0&amp;#39;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;||&lt;/span&gt; ch&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#39;9&amp;#39;&lt;/span&gt;;ch&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;getchar()) ng&lt;span style=&#34;color:#666&#34;&gt;|=&lt;/span&gt;ch&lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#39;-&amp;#39;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 43&lt;/span&gt;&lt;span&gt;   &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(;ch&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;=&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#39;0&amp;#39;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; ch&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#39;9&amp;#39;&lt;/span&gt;;ch&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;getchar()) x&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;(x&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;3&lt;/span&gt;)&lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt;(x&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;)&lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt;ch&lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#39;0&amp;#39;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 44&lt;/span&gt;&lt;span&gt;   &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ng&lt;span style=&#34;color:#666&#34;&gt;?-&lt;/span&gt;&lt;span style=&#34;color:#a0a000&#34;&gt;x&lt;/span&gt;:x;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 45&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 46&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;/*------------------------------------------------------------------------------------*/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 47&lt;/span&gt;&lt;span&gt;ll &lt;span style=&#34;color:#00f&#34;&gt;gcd&lt;/span&gt;(ll x, ll y){&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;x&lt;span style=&#34;color:#666&#34;&gt;?&lt;/span&gt; &lt;span style=&#34;color:#a0a000&#34;&gt;y&lt;/span&gt;: gcd(y &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; x, x);}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 48&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;exgcd&lt;/span&gt;(ll a, ll b, ll &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;x, ll &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;y){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 49&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;b){x &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; y &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt;;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 50&lt;/span&gt;&lt;span&gt;    exgcd(b, a &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; b, y, x); y &lt;span style=&#34;color:#666&#34;&gt;-=&lt;/span&gt; a &lt;span style=&#34;color:#666&#34;&gt;/&lt;/span&gt; b &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; x;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 51&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 52&lt;/span&gt;&lt;span&gt;ll &lt;span style=&#34;color:#00f&#34;&gt;qp&lt;/span&gt;(ll a, ll p){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 53&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(p &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 54&lt;/span&gt;&lt;span&gt;    ll ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(p){&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(p &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;) ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; ans &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; a ; a &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; a &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; a; p &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&amp;gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 55&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ans;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 56&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 57&lt;/span&gt;&lt;span&gt;ll &lt;span style=&#34;color:#00f&#34;&gt;qp&lt;/span&gt;(ll a, ll p, ll M){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 58&lt;/span&gt;&lt;span&gt;    ll ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(p){ &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(p &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;) ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; ans &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; a &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; M; a &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; a &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; a &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; M; p &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&amp;gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 59&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ans;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 60&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 61&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;/*------------------------------------------------------------------------------------*/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 62&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 63&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; maxn &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;5e5&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 64&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; M &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1e9&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;7&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 65&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; a[maxn], b[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 66&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 67&lt;/span&gt;&lt;span&gt;ll &lt;span style=&#34;color:#00f&#34;&gt;cal&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; l, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; r){&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; (r &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; l) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1ll&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; (r &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; l) &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; M;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 68&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 69&lt;/span&gt;&lt;span&gt;stack&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;pair&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&amp;gt;&lt;/span&gt; sta;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 70&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 71&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;(){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 72&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//    Fastin;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 73&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n; scnaf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;n);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 74&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, a &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; i); a[n &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 75&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 76&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) b[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; a[i] &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a[i &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 77&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(b[n &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) n&lt;span style=&#34;color:#666&#34;&gt;--&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 78&lt;/span&gt;&lt;span&gt;    ll ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 79&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; p &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;, q &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(b[q] &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) q&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 80&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(p &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 81&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(b[p] &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; b[q] &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 82&lt;/span&gt;&lt;span&gt;            ans &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;b[q] &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; cal(p, q); ans &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; M;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 83&lt;/span&gt;&lt;span&gt;            b[p] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; b[q];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 84&lt;/span&gt;&lt;span&gt;            q&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(q &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; b[q] &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) q&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 85&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 86&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(b[p] &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; b[q] &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 87&lt;/span&gt;&lt;span&gt;            ans &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; b[p] &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; cal(p, q); ans &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; M;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 88&lt;/span&gt;&lt;span&gt;            p&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;; q&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(p &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; b[p] &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) p&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(q &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; b[q] &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) q&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 89&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 90&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 91&lt;/span&gt;&lt;span&gt;            ans &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; b[p] &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; cal(p, q); ans &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; M;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 92&lt;/span&gt;&lt;span&gt;            b[q] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; b[p];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 93&lt;/span&gt;&lt;span&gt;            p&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(p &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; b[p] &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) p&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 94&lt;/span&gt;&lt;span&gt;            
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 95&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 96&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 97&lt;/span&gt;&lt;span&gt;    printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%lld &amp;#34;&lt;/span&gt;, ans &lt;span style=&#34;color:#666&#34;&gt;%&lt;/span&gt; M);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 98&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 99&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) b[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; a[i] &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a[i &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;100&lt;/span&gt;&lt;span&gt;    ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;101&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;102&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(b[i] &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) sta.push({i, b[i]});
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;103&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(b[i] &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;104&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;105&lt;/span&gt;&lt;span&gt;                pair&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; now &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; sta.top(); sta.pop();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;106&lt;/span&gt;&lt;span&gt;                &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(now.second &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; b[i] &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;107&lt;/span&gt;&lt;span&gt;                    ans &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; now.second &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; cal(now.first, i); ans &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; M;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;108&lt;/span&gt;&lt;span&gt;                    b[i] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; now.second;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;109&lt;/span&gt;&lt;span&gt;                }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;110&lt;/span&gt;&lt;span&gt;                &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;111&lt;/span&gt;&lt;span&gt;                    ans &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;b[i] &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; cal(now.first, i); ans &lt;span style=&#34;color:#666&#34;&gt;%=&lt;/span&gt; M;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;112&lt;/span&gt;&lt;span&gt;                    now.second &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; b[i];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;113&lt;/span&gt;&lt;span&gt;                    sta.push(now);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;114&lt;/span&gt;&lt;span&gt;                    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;break&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;115&lt;/span&gt;&lt;span&gt;                }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;116&lt;/span&gt;&lt;span&gt;                
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;117&lt;/span&gt;&lt;span&gt;            }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;118&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;119&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;120&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;121&lt;/span&gt;&lt;span&gt;    printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%lld&lt;/span&gt;&lt;span style=&#34;color:#b62;font-weight:bold&#34;&gt;\n&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;, ans);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;122&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;123&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;124&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;i-构造&#34;&gt;I 构造&lt;/h3&gt;
&lt;p&gt;&lt;del&gt;虽然感觉还是说不太清楚qaq&lt;/del&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2020-hdu多校-3</title>
      <link>https://rqdmap.top/acm/2020-hdu%E5%A4%9A%E6%A0%A1-3/</link>
      <pubDate>Tue, 28 Jul 2020 20:11:40 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2020-hdu%E5%A4%9A%E6%A0%A1-3/</guid>
      <description>&lt;h2 id=&#34;1004-前缀和dp&#34;&gt;1004 前缀和dp&lt;/h2&gt;
&lt;p&gt;预处理出前缀和，前缀和相同的两个点之间就可以合并成一个满足条件的数。&lt;/p&gt;
&lt;p&gt;从后往前利用前缀和即可dp处理出最多的个数。&lt;/p&gt;
&lt;h2 id=&#34;1009-模拟括号匹配&#34;&gt;1009 模拟括号匹配&lt;/h2&gt;
&lt;p&gt;出现未配对的右括号就用最左边的&lt;code&gt;*&lt;/code&gt;去匹配，出现未配对的左括号就用最右边的&lt;code&gt;*&lt;/code&gt;去匹配。&lt;/p&gt;
&lt;p&gt;&lt;del&gt;差不多是这样&lt;/del&gt;&lt;/p&gt;
&lt;h2 id=&#34;1005-并查集计数&#34;&gt;1005 并查集&amp;amp;计数&lt;/h2&gt;
&lt;p&gt;先统计一下所有点集在无边时的ans值，然后每连两个联通块，就将这两个联通块之间之前会产生的贡献全部减去即可。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2020-牛客多校-5</title>
      <link>https://rqdmap.top/acm/2020-%E7%89%9B%E5%AE%A2%E5%A4%9A%E6%A0%A1-5/</link>
      <pubDate>Mon, 27 Jul 2020 22:03:09 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2020-%E7%89%9B%E5%AE%A2%E5%A4%9A%E6%A0%A1-5/</guid>
      <description>&lt;p&gt;坑&lt;/p&gt;
&lt;h2 id=&#34;i-数学构造题&#34;&gt;I 数学构造题&lt;/h2&gt;
&lt;p&gt;想这类题的时候不能太过于从有限的角度去考虑无穷的角度，如果用有限的面积拓展到无限的面积，那么最多大概也就1/2, 5/9的情况，这不是最优的。应该用无限的观点去尝试构造，考虑一个金块最多可以贡献出4个信标，一个炼丹炉最多也可以贡献4个信标，并且认为这一个金块和一个炼丹炉都能在平均的意义下满足4个信标的放置条件，那么最好的情况就是4/6 = 2/3。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2020-牛客多校-6</title>
      <link>https://rqdmap.top/acm/2020-%E7%89%9B%E5%AE%A2%E5%A4%9A%E6%A0%A1-6/</link>
      <pubDate>Mon, 27 Jul 2020 20:09:49 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2020-%E7%89%9B%E5%AE%A2%E5%A4%9A%E6%A0%A1-6/</guid>
      <description>&lt;p&gt;有坑待补 具体数学 约瑟夫的Ok做法&lt;/p&gt;
&lt;!-- more--&gt;
&lt;h2 id=&#34;b-线性无关的n维01向量个数&#34;&gt;B 线性无关的n维01向量个数&lt;/h2&gt;
&lt;p&gt;考虑每次加入元素时可取的元素个数。&lt;/p&gt;
&lt;p&gt;假设当前已经取了i个线性无关向量，则它们可以张出一共$2^i$个向量，所以第i + 1个向量只有$2^n - 2 ^ i$种可取办法。&lt;/p&gt;
&lt;p&gt;因而$f(n) = \prod_{i=0}^{n - 1}(2^n-2^i)/2^n$&lt;/p&gt;
&lt;p&gt;推导可得递推关系:&lt;/p&gt;
&lt;p&gt;$f(n) = (1 - 1/2^n)*f(n - 1)$&lt;/p&gt;
&lt;p&gt;线性处理出来O1查询即可。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2020-hdu多校-2</title>
      <link>https://rqdmap.top/acm/2020-hdu%E5%A4%9A%E6%A0%A1-2/</link>
      <pubDate>Thu, 23 Jul 2020 19:44:48 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2020-hdu%E5%A4%9A%E6%A0%A1-2/</guid>
      <description>&lt;h1 id=&#34;6763--1001-并查集&#34;&gt;6763  1001 并查集&lt;/h1&gt;
&lt;p&gt;题目出锅了 虽然开局一堆人A的飞快，但是应该都是假算法？&lt;del&gt;主要是出题人给的题解是假的&lt;/del&gt;&lt;/p&gt;
&lt;p&gt;如果从每次都尽可能删除极大联通块的策略来考虑，那么可以用并查集维护信息。显然在一个极大联通块中可以将每个节点删去所有权值中的最小值，之后该点断裂，将原联通块分成若干个小联通块，反复进行上述操作即可。我们用并查集反向维护这个过程：将所有节点按照权值从大到小进行遍历，如果当前点$u$连有边$&amp;lt;u,v&amp;gt;$并且有$w[v] &amp;gt; w[u]$，那么就在并查集中连$&amp;lt;root[v]-&amp;gt;u&amp;gt;$ 。这样， 我们最终就会得到一颗有根树，其上节点的父子关系也给出了删去权值的方案。最终只需要用&lt;code&gt;w[x] - w[par[x]]​&lt;/code&gt;去更新答案即可。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2020-hdu多校-1</title>
      <link>https://rqdmap.top/acm/2020-hdu%E5%A4%9A%E6%A0%A1-1/</link>
      <pubDate>Wed, 22 Jul 2020 18:02:26 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2020-hdu%E5%A4%9A%E6%A0%A1-1/</guid>
      <description>&lt;h3 id=&#34;1006&#34;&gt;1006&lt;/h3&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-c1b202f296227d114743c993f6de7579-0-1774547727201&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-c1b202f296227d114743c993f6de7579-0-1774547727201&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-c1b202f296227d114743c993f6de7579-0-1774547727201&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; itn maxn &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1e5&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  2&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n, m, w[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  4&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;struct&lt;/span&gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;star&lt;/span&gt;{&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; to, next;};
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  5&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  6&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; head[maxn], top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  7&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; du[maxn], K;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  8&lt;/span&gt;&lt;span&gt;star edge[maxn &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;  9&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;add&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; v){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 10&lt;/span&gt;&lt;span&gt;    edge[top].to &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; v;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 11&lt;/span&gt;&lt;span&gt;    edge[top].next &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[u];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 12&lt;/span&gt;&lt;span&gt;    head[u] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; top&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 13&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 14&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 15&lt;/span&gt;&lt;span&gt;unordered_map&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; mp[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 16&lt;/span&gt;&lt;span&gt;unordered_map&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; conv;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 17&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 18&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; c[&lt;span style=&#34;color:#666&#34;&gt;700&lt;/span&gt;][maxn], bitcnt &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;, zero[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 19&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;add&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; id, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; x, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 20&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n){ c[id][i] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; x; i &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; lowbit(i);}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 21&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 22&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;query&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; id, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 23&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 24&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(i){ans &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; c[id][i]; i &lt;span style=&#34;color:#666&#34;&gt;-=&lt;/span&gt; lowbit(i);} &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ans;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 25&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 26&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 27&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;bitupdate&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; key, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; op){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 28&lt;/span&gt;&lt;span&gt;    assert(conv.count(u) &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 29&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; id &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; conv[u]; add(id, key, op, du[u]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 30&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 31&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 32&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//将u节点的邻接权值key的数量 += op
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 33&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;update&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; key, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; op){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 34&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(key &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; du[u]) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 35&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 36&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//特判断0
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 37&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(key &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 38&lt;/span&gt;&lt;span&gt;        zero[u] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; op; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 39&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 40&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 41&lt;/span&gt;&lt;span&gt;    mp[u][key] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; op;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 42&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;// 1 - &amp;gt;0
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 43&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(mp[u][key] &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 44&lt;/span&gt;&lt;span&gt;        bitupdate(u, key, &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 45&lt;/span&gt;&lt;span&gt;        mp[u].erase(key);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 46&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 47&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//0 -&amp;gt; 1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 48&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(mp[u][key] &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; op &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;) bitupdate(u, key, &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 49&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 50&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 51&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 52&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//检查u节点的邻点中 权值x及其之前是否填满
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 53&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;bool&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;check&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; x){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 54&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(x &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 55&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(zero[u] &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 56&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 57&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 58&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; cnt &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; query(conv[u], x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 59&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; x &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; cnt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 60&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 61&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 62&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; temp[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 63&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;mex&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 64&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(du[u] &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; K){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 65&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; du[u]; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) temp[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 66&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[u]; &lt;span style=&#34;color:#666&#34;&gt;~&lt;/span&gt;i; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; edge[i].next){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 67&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(w[edge[i].to] &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; du[u]) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;continue&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 68&lt;/span&gt;&lt;span&gt;            temp[w[edge[i].to]] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 69&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 70&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; du[u]; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;temp[i]) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; i;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 71&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 72&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 73&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 74&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(zero[u] &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 75&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 76&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; left &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;, right &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; du[u], middle;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 77&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(left &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; right){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 78&lt;/span&gt;&lt;span&gt;            middle &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; (left &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; right) &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 79&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(check(u, middle)) left &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; middle &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 80&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; right &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; middle;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 81&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 82&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; left;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 83&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 84&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 85&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 86&lt;/span&gt;&lt;span&gt;unordered_set&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; vec[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 87&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 88&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;struct&lt;/span&gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;NODE&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 89&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; x, y;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 90&lt;/span&gt;&lt;span&gt;    NODE(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; _x, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; _y){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 91&lt;/span&gt;&lt;span&gt;        x &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; min(_x, _y);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 92&lt;/span&gt;&lt;span&gt;        y &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; max(_x, _y);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 93&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 94&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;bool&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;operator&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;(&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; NODE &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;b)&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 95&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(x &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; b.x) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; x &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; b.x;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 96&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; y &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; b.y;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 97&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 98&lt;/span&gt;&lt;span&gt;};
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 99&lt;/span&gt;&lt;span&gt;set&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;NODE&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; EDGE;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;100&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;101&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;(){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;102&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//    Fastin;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;103&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; t; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;t); &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(t&lt;span style=&#34;color:#666&#34;&gt;--&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;104&lt;/span&gt;&lt;span&gt;        clr(head, &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;); top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; clr(du, &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;); clr(zero, &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;); bitcnt &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;105&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;106&lt;/span&gt;&lt;span&gt;        n &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; read(); m &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; read();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;107&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;108&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) mp[i].clear(); conv.clear();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;109&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;110&lt;/span&gt;&lt;span&gt;        K &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; sqrt(m);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;111&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;112&lt;/span&gt;&lt;span&gt;            w[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; read(); vec[i].clear();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;113&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;114&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;115&lt;/span&gt;&lt;span&gt;        EDGE.clear();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;116&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; m; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;117&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u, v; u &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; read(); v &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; read();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;118&lt;/span&gt;&lt;span&gt;            EDGE.insert(NODE(u, v));
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;119&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;120&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;auto&lt;/span&gt; &lt;span style=&#34;color:#a0a000&#34;&gt;edge&lt;/span&gt;: EDGE){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;121&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(edge.x &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; edge.y){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;122&lt;/span&gt;&lt;span&gt;                add(edge.x, edge.y); add(edge.y, edge.x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;123&lt;/span&gt;&lt;span&gt;                du[edge.x]&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;; du[edge.y]&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;124&lt;/span&gt;&lt;span&gt;            }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;125&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;126&lt;/span&gt;&lt;span&gt;                add(edge.x, edge.y);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;127&lt;/span&gt;&lt;span&gt;                du[edge.x]&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;128&lt;/span&gt;&lt;span&gt;            }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;129&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;130&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//只有O(sqrt(m))个点的度&amp;gt;= K = sqrt(m)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;131&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(du[i] &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;=&lt;/span&gt; K){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;132&lt;/span&gt;&lt;span&gt;            memset(c[bitcnt], &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;, &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;sizeof&lt;/span&gt; (c[bitcnt]));
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;133&lt;/span&gt;&lt;span&gt;            conv[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; bitcnt&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;134&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; j &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[i]; &lt;span style=&#34;color:#666&#34;&gt;~&lt;/span&gt;j; j &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; edge[j].next){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;135&lt;/span&gt;&lt;span&gt;                &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; to &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; edge[j].to; vec[to].insert(i);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;136&lt;/span&gt;&lt;span&gt;                update(i, w[to], &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;137&lt;/span&gt;&lt;span&gt;            }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;138&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;139&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;140&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; q; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;q); &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(q&lt;span style=&#34;color:#666&#34;&gt;--&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;141&lt;/span&gt;&lt;span&gt;            itn op, x, y; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;op);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;142&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(op &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;143&lt;/span&gt;&lt;span&gt;                x &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; read(); y &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; read();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;144&lt;/span&gt;&lt;span&gt;                &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//w[x] := y;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;145&lt;/span&gt;&lt;span&gt;                &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//v是所有的相邻大度点
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;146&lt;/span&gt;&lt;span&gt;                &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;auto&lt;/span&gt; &lt;span style=&#34;color:#a0a000&#34;&gt;v&lt;/span&gt;: vec[x]){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;147&lt;/span&gt;&lt;span&gt;                    update(v, w[x], &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;148&lt;/span&gt;&lt;span&gt;                    update(v, y, &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;149&lt;/span&gt;&lt;span&gt;                }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;150&lt;/span&gt;&lt;span&gt;                w[x] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; y;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;151&lt;/span&gt;&lt;span&gt;            }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;152&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;153&lt;/span&gt;&lt;span&gt;                x &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; read();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;154&lt;/span&gt;&lt;span&gt;                printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&lt;/span&gt;&lt;span style=&#34;color:#b62;font-weight:bold&#34;&gt;\n&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;, mex(x));
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;155&lt;/span&gt;&lt;span&gt;            }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;156&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;157&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;158&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;159&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;160&lt;/span&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
    </item>
	  
    <item>
      <title>网络流</title>
      <link>https://rqdmap.top/acm/%E7%BD%91%E7%BB%9C%E6%B5%81/</link>
      <pubDate>Tue, 14 Jul 2020 15:30:19 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/%E7%BD%91%E7%BB%9C%E6%B5%81/</guid>
      <description>&lt;p&gt;两个定理的证明&lt;/p&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;https://www.cnblogs.com/cniwoq/p/9245813.html&#34; class=external-link &gt;https://www.cnblogs.com/cniwoq/p/9245813.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;spfa的一些说明&lt;/p&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;https://blog.csdn.net/xiazdong/article/details/8193680&#34; class=external-link &gt;https://blog.csdn.net/xiazdong/article/details/8193680&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;dinic&lt;/p&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-64158f4dbc4c6f830f6603aa77d43302-0-1774547727207&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-64158f4dbc4c6f830f6603aa77d43302-0-1774547727207&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-64158f4dbc4c6f830f6603aa77d43302-0-1774547727207&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; itn maxn &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1200&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 2&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; maxe &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;120000&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; ll inf &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1ll&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;60&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 4&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 5&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;struct&lt;/span&gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;star&lt;/span&gt;{&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; to, next, w;};
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 6&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; head[maxn], top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 7&lt;/span&gt;&lt;span&gt;star edge[maxe &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 8&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 9&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;add&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; v, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; w){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;10&lt;/span&gt;&lt;span&gt;    edge[top].to &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; v;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;11&lt;/span&gt;&lt;span&gt;    edge[top].next &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[u];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;12&lt;/span&gt;&lt;span&gt;    edge[top].w &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; w;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;13&lt;/span&gt;&lt;span&gt;    head[u] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; top&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;14&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;15&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;16&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; d[maxn], cur[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;17&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;18&lt;/span&gt;&lt;span&gt;ll &lt;span style=&#34;color:#00f&#34;&gt;dfs&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; s, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; t, ll flow){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;19&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(flow &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;||&lt;/span&gt; s &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; t) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; flow;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;20&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;21&lt;/span&gt;&lt;span&gt;    ll res &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;, f;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;22&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; cur[s]; &lt;span style=&#34;color:#666&#34;&gt;~&lt;/span&gt;i; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; edge[i].next){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;23&lt;/span&gt;&lt;span&gt;        cur[s] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; i;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;24&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(d[edge[i].to] &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; d[s] &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;25&lt;/span&gt;&lt;span&gt;            f &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; dfs(edge[i].to, t, min(flow, (ll)edge[i].w));
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;26&lt;/span&gt;&lt;span&gt;            edge[i].w &lt;span style=&#34;color:#666&#34;&gt;-=&lt;/span&gt; f; edge[i &lt;span style=&#34;color:#666&#34;&gt;^&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;].w &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; f; res &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; f; flow &lt;span style=&#34;color:#666&#34;&gt;-=&lt;/span&gt; f;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;27&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(flow &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;break&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;28&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;29&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;30&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; res;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;31&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;32&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;33&lt;/span&gt;&lt;span&gt;queue&lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; q, q0;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;34&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;bool&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;bfs&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; s, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; t){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;35&lt;/span&gt;&lt;span&gt;    clr(d, &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;36&lt;/span&gt;&lt;span&gt;    q &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; q0; q.push(s);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;37&lt;/span&gt;&lt;span&gt;    cur[s] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[s]; d[s] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;38&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;q.empty()){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;39&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; now &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; q.front(); q.pop();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;40&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[now]; &lt;span style=&#34;color:#666&#34;&gt;~&lt;/span&gt;i; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; edge[i].next) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;d[edge[i].to] &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; edge[i].w &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;41&lt;/span&gt;&lt;span&gt;            cur[edge[i].to] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; head[edge[i].to]; d[edge[i].to] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; d[now] &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;42&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(edge[i].to &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; t) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#008000&#34;&gt;true&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;43&lt;/span&gt;&lt;span&gt;            q.push(edge[i].to);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;44&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;45&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;46&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#008000&#34;&gt;false&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;47&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;48&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;49&lt;/span&gt;&lt;span&gt;ll &lt;span style=&#34;color:#00f&#34;&gt;dinic&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; s, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; t){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;50&lt;/span&gt;&lt;span&gt;    ll ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;51&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(bfs(s, t)) ans &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; dfs(s, t, inf);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;52&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ans;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;53&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;54&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;55&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;56&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;57&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;(){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;58&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//    Fastin;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;59&lt;/span&gt;&lt;span&gt;    clr(head, &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;60&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n, m, s, t; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d %d %d %d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;n, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;m, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;s, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;t);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;61&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;, u, v, w; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; m; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;62&lt;/span&gt;&lt;span&gt;        scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d %d %d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;u, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;v, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;w);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;63&lt;/span&gt;&lt;span&gt;        add(u, v, w); add(v, u, &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;64&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;65&lt;/span&gt;&lt;span&gt;    printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%lld&lt;/span&gt;&lt;span style=&#34;color:#b62;font-weight:bold&#34;&gt;\n&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;, dinic(s, t));
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;66&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;67&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;isap&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2020-牛客多校-1</title>
      <link>https://rqdmap.top/acm/2020-%E7%89%9B%E5%AE%A2%E5%A4%9A%E6%A0%A1-1/</link>
      <pubDate>Sun, 12 Jul 2020 19:12:59 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2020-%E7%89%9B%E5%AE%A2%E5%A4%9A%E6%A0%A1-1/</guid>
      <description>&lt;hr&gt;
&lt;h3 id=&#34;f-periodicity-lemma&#34;&gt;F Periodicity Lemma&lt;/h3&gt;
&lt;p&gt;叉姐知乎专栏 

  
    
  

&lt;a href=&#34;https://zhuanlan.zhihu.com/which-way-did-the-bicycle-go&#34; class=external-link &gt;https://zhuanlan.zhihu.com/which-way-did-the-bicycle-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;另一篇证明 

  
    
  

&lt;a href=&#34;https://zhuanlan.zhihu.com/p/89385360&#34; class=external-link &gt;https://zhuanlan.zhihu.com/p/89385360&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;原文 

  
    
  

&lt;a href=&#34;http://www.karlin.mff.cuni.cz/~holub/soubory/FineWilf.pdf&#34; class=external-link &gt;http://www.karlin.mff.cuni.cz/~holub/soubory/FineWilf.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;定理如下：&lt;/p&gt;
&lt;p&gt;长为n的字符串S有循环节p、q，且满足p + q - gcd(p, q) &amp;lt;= n，那么有gcd(p, q)也是S的循环节。&lt;/p&gt;
&lt;p&gt;已知上述结论后，那么为了比较$s^∞$与$t^∞$的字典序就可以只比较$|s| + |t| - gcd(|s|, |t|)$次。&lt;/p&gt;
&lt;p&gt;&lt;del&gt;真是高级的结论，证明及其数学思想留坑待补&lt;/del&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2016-icpc-beijing</title>
      <link>https://rqdmap.top/acm/2016-icpc-beijing/</link>
      <pubDate>Tue, 07 Jul 2020 23:44:24 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2016-icpc-beijing/</guid>
      <description>&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;H&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;二分答案然后跑&lt;strong&gt;圆的k次交&lt;/strong&gt;即可。&lt;/p&gt;
&lt;p&gt;因为学习完k次交后精疲力竭就不写完整这道题了。&lt;/p&gt;
&lt;p&gt;贴一下用自己的码风写的板子。已更新入模版中。&lt;/p&gt;
&lt;p&gt;给出n个圆的平面坐标和半径，能够获得所有圆k次交的面积。&lt;/p&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-65de4ede674915b7eb7c4109e05ba436-0-1774547727214&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-65de4ede674915b7eb7c4109e05ba436-0-1774547727214&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-65de4ede674915b7eb7c4109e05ba436-0-1774547727214&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; manx &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1e2&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 2&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; eps &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1e-8&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; pi &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; acos(&lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 4&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 5&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;inline&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;sgn&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; x){&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; x &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;eps&lt;span style=&#34;color:#666&#34;&gt;?&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;:&lt;/span&gt; x &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; eps&lt;span style=&#34;color:#666&#34;&gt;?&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 6&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;inline&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;sqr&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; x){&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; x &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; x;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 7&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 8&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;struct&lt;/span&gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;CIRCLE&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 9&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; x, y, r, angle;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;10&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; d;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;11&lt;/span&gt;&lt;span&gt;    CIRCLE(){d &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; angle &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;12&lt;/span&gt;&lt;span&gt;    CIRCLE(&lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; _x, &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; _y, &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; _angle &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; _d &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;13&lt;/span&gt;&lt;span&gt;        x &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; _x; y &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; _y; angle &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; _angle; d &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; _d; r &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;14&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;15&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;bool&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;operator&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; (&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; CIRCLE &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;b)&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;16&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;sgn&lt;/span&gt;(r &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; b.r) &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;17&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;18&lt;/span&gt;&lt;span&gt;};
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;19&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;20&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;inline&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;dis&lt;/span&gt;(CIRCLE a, CIRCLE b){&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; sqrt(sqr(a.x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; b.x) &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; sqr(a.y &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; b.y));}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;21&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;inline&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;cross&lt;/span&gt;(CIRCLE a, CIRCLE b, CIRCLE c){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;22&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; (b.x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.x) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; (c.y &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.y) &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; (b.y &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.y) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; (c.x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;23&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;24&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;25&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//有两个交点返回true，以及两个交点的坐标和方位角，p1按照顺时针，p2按照逆时针
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;26&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;bool&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;cir_inter_cir&lt;/span&gt;(CIRCLE a, CIRCLE b, CIRCLE &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;p1, CIRCLE &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;p2){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;27&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; d &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; dis(a, b);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;28&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(sgn(d &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.r &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; b.r) &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;||&lt;/span&gt; sgn(abs(b.r &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.r) &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; d) &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#008000&#34;&gt;false&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;29&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; cosa &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; (sqr(a.r) &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; sqr(d) &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; sqr(b.r)) &lt;span style=&#34;color:#666&#34;&gt;/&lt;/span&gt; (&lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; a.r &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; d);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;30&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; sina &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; sqrt(max(&lt;span style=&#34;color:#666&#34;&gt;0.&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;1.&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; sqr(cosa)));
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;31&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//旋转矩阵 [cosa, -sina; sina, cosa]
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;32&lt;/span&gt;&lt;span&gt;    p1 &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; p2 &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; a;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;33&lt;/span&gt;&lt;span&gt;    p1.x &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; a.r &lt;span style=&#34;color:#666&#34;&gt;/&lt;/span&gt; d &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; ((b.x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.x) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; cosa &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; (b.y &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.y) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;sina);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;34&lt;/span&gt;&lt;span&gt;    p1.y &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; a.r &lt;span style=&#34;color:#666&#34;&gt;/&lt;/span&gt; d &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; ((b.x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.x) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; sina &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; (b.y &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.y) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; cosa);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;35&lt;/span&gt;&lt;span&gt;    p2.x &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; a.r &lt;span style=&#34;color:#666&#34;&gt;/&lt;/span&gt; d &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; ((b.x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.x) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; cosa &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; (b.y &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.y) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; sina);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;36&lt;/span&gt;&lt;span&gt;    p2.y &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; a.r &lt;span style=&#34;color:#666&#34;&gt;/&lt;/span&gt; d &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; ((b.x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.x) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;sina &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; (b.y &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; a.y) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; cosa);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;37&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#008000&#34;&gt;true&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;38&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;39&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;40&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;bool&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;cmp&lt;/span&gt;(&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; CIRCLE &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;a, &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; CIRCLE &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;b){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;41&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(sgn(a.angle &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; b.angle)) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; sgn(a.angle &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; b.angle) &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;42&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; a.d &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&lt;/span&gt; b.d;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;43&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;44&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;45&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;cal&lt;/span&gt;(CIRCLE a, CIRCLE p1, CIRCLE p2){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;46&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; sqr(a.r) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; (p2.angle &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; p1.angle) &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; cross(a, p1, p2) &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; cross(CIRCLE(&lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;), p1, p2);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;47&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ans &lt;span style=&#34;color:#666&#34;&gt;/&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;48&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;49&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;50&lt;/span&gt;&lt;span&gt;CIRCLE dot[maxn &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;51&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; area[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;52&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;cirunion&lt;/span&gt;(CIRCLE cir[], &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;53&lt;/span&gt;&lt;span&gt;    sort(cir, cir &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; n);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;54&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//记录每个圆被完全覆盖的次数，初始值显然为1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;55&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; j &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; j &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; j&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;56&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(sgn(dis(cir[i], cir[j]) &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; cir[i].r &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; cir[j].r) &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;) cir[i].d&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;57&lt;/span&gt;&lt;span&gt;    CIRCLE p1, p2;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;58&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;59&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//针对每一个圆考虑它与所有其他圆的交
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;60&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; cnt &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;, top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;61&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; j &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; j &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; j&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;62&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(i &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; j) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;continue&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;63&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;cir_inter_cir(cir[i], cir[j], p1, p2)) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;continue&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;64&lt;/span&gt;&lt;span&gt;            p1.angle &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; atan2(p1.y &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; cir[i].y, p1.x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; cir[i].x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;65&lt;/span&gt;&lt;span&gt;            p2.angle &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; atan2(p2.y &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; cir[i].y, p2.x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; cir[i].x);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;66&lt;/span&gt;&lt;span&gt;            p1.d &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; p2.d &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;67&lt;/span&gt;&lt;span&gt;            dot[top&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; p1; dot[top&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; p2;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;68&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(sgn(p2.angle &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; p1.angle) &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;) cnt&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;69&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;70&lt;/span&gt;&lt;span&gt;        
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;71&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//加入起点终点位置
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;72&lt;/span&gt;&lt;span&gt;        dot[top&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; CIRCLE(cir[i].x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; cir[i].r, cir[i].y, &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;pi, &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;73&lt;/span&gt;&lt;span&gt;        dot[top&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; CIRCLE(cir[i].x &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; cir[i].r, cir[i].y, pi, &lt;span style=&#34;color:#666&#34;&gt;2&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;74&lt;/span&gt;&lt;span&gt;        sort(dot, dot &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; top, cmp);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;75&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; now &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; cir[i].d &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; cnt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;76&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; j &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; j &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; top; j&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;77&lt;/span&gt;&lt;span&gt;            area[now] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; cal(cir[i], dot[j &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;], dot[j]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;78&lt;/span&gt;&lt;span&gt;            now &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; dot[j].d;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;79&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;80&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;81&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;82&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;83&lt;/span&gt;&lt;span&gt;CIRCLE cir[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;84&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;(){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;85&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//    Fastin;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;86&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; t; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;t); &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(t&lt;span style=&#34;color:#666&#34;&gt;--&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;87&lt;/span&gt;&lt;span&gt;        clr(area, &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;88&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;n);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;89&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%lf %lf %lf&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;cir[i].x, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;cir[i].y, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;cir[i].r);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;90&lt;/span&gt;&lt;span&gt;        cirunion(cir, n);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;91&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%.5f&lt;/span&gt;&lt;span style=&#34;color:#b62;font-weight:bold&#34;&gt;\n&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;, area[i]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;92&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;93&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;94&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;del&gt;因为网上基本没有讲解只有代码..oi-wiki甚至好像都没有收录这个算法，所以我学了好久才&amp;hellip;&lt;/del&gt;&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2016-icpc-qingdao</title>
      <link>https://rqdmap.top/acm/2016-icpc-qingdao/</link>
      <pubDate>Tue, 30 Jun 2020 16:00:03 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2016-icpc-qingdao/</guid>
      <description>&lt;p&gt;参考说明：&lt;/p&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;https://github.com/ftiasch/icpc-camp-wiki/commit/83642c220274db20ae5f86caa958029b2cbb2f9c&#34; class=external-link &gt;added saltyfish/2016 ACM/ICPC Asia Regional Qingdao Onsite.page&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;

  
    
  

&lt;a href=&#34;https://github.com/ftiasch/icpc-camp-wiki/blob/364abdcbedef99104107d01e64152fa0e492bade/post/Post%20640.page&#34; class=external-link &gt;Fibnacci&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;d-概率&#34;&gt;D 概率&lt;/h2&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-36f4e69ecb27982c46c8483875ec9c25-0-1774547727219&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-36f4e69ecb27982c46c8483875ec9c25-0-1774547727219&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-36f4e69ecb27982c46c8483875ec9c25-0-1774547727219&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;qp&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; a, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; p){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 2&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 3&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(p){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 4&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(p &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;) ans &lt;span style=&#34;color:#666&#34;&gt;*=&lt;/span&gt; a;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 5&lt;/span&gt;&lt;span&gt;        a &lt;span style=&#34;color:#666&#34;&gt;*=&lt;/span&gt; a; p &lt;span style=&#34;color:#666&#34;&gt;&amp;gt;&amp;gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 6&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 7&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ans;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 8&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 9&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;10&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;11&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; num[&lt;span style=&#34;color:#666&#34;&gt;20&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;12&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; p[&lt;span style=&#34;color:#666&#34;&gt;20&lt;/span&gt;], ans[&lt;span style=&#34;color:#666&#34;&gt;20&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;13&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;14&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//除了x硬币其余硬币活不到第k轮的概率
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;15&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;sove&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; x, &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; k){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;16&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;double&lt;/span&gt; ans &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;17&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;18&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(i &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; x) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;continue&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;19&lt;/span&gt;&lt;span&gt;        ans &lt;span style=&#34;color:#666&#34;&gt;*=&lt;/span&gt; qp((&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; qp(p[i], k)), num[i]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;20&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;21&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; ans;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;22&lt;/span&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;23&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;24&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;(){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;25&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//    Fastin;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;26&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; t; scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;t); &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(t&lt;span style=&#34;color:#666&#34;&gt;--&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;27&lt;/span&gt;&lt;span&gt;        scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;n);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;28&lt;/span&gt;&lt;span&gt;        fro(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;29&lt;/span&gt;&lt;span&gt;            scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d %lf&amp;#34;&lt;/span&gt;, num &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; i, p &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; i);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;30&lt;/span&gt;&lt;span&gt;            ans[i] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;31&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;32&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(n &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;) printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;1.000000&lt;/span&gt;&lt;span style=&#34;color:#b62;font-weight:bold&#34;&gt;\n&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;33&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;34&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//实验100轮
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;35&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;100&lt;/span&gt;; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; x &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; x &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; x&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;36&lt;/span&gt;&lt;span&gt;                ans[x] &lt;span style=&#34;color:#666&#34;&gt;+=&lt;/span&gt; (sove(x, i) &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; sove(x, i &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;)) &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; (&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; qp((&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; qp(p[x], i)), num[x]));
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;37&lt;/span&gt;&lt;span&gt;            }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;38&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;39&lt;/span&gt;&lt;span&gt;                printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%.6f&amp;#34;&lt;/span&gt;, ans[i]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;40&lt;/span&gt;&lt;span&gt;                &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(i &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; n &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;) printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34; &amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;41&lt;/span&gt;&lt;span&gt;                &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;else&lt;/span&gt; printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#b62;font-weight:bold&#34;&gt;\n&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;42&lt;/span&gt;&lt;span&gt;            }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;43&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;44&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;45&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;46&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;考虑所有三元组，图是若干个团之并的充要条件是不存在某个三元组中有两条边（实际上就是要满足传递性），于是任取一个有两条边的三元组，枚举加上剩下的边或者删除现有两条边之一，修改一条边之后会有$O(n)$个三元组受影响，暴力修改这些三元组，同时用一个队列+时间戳维护当前有两条边的三元组，搜$10$步即可，复杂度是$O(n^3+n3^{10})$&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2017-ICPC-jakarta</title>
      <link>https://rqdmap.top/acm/2017-icpc-jakarta/</link>
      <pubDate>Sat, 27 Jun 2020 22:51:59 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2017-icpc-jakarta/</guid>
      <description>&lt;!-- more--&gt;
&lt;hr&gt;
&lt;h2 id=&#34;b-动态维护两个序列之间的最小差值&#34;&gt;B 动态维护两个序列之间的最小差值&lt;/h2&gt;
&lt;p&gt;尝试将图二分染色。如果不能二分染色，那么两人无论初始处于什么位置一定都有某种策略走到同一个节点；如果能够二分染色，题目则等价转化求$min{|u - v|}, u∈A, v∈B$，并且支持在线修改，这种情况是我们要着重处理的问题。&lt;/p&gt;
&lt;p&gt;为此，利用multiset作为一个&lt;strong&gt;有序容器&lt;/strong&gt;来实现这个功能。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>CF-1373E</title>
      <link>https://rqdmap.top/acm/cf-1373e/</link>
      <pubDate>Sat, 27 Jun 2020 18:09:30 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/cf-1373e/</guid>
      <description>&lt;p&gt;其实是一道比较简单的暴力构造题（？）&lt;/p&gt;
&lt;p&gt;但是因为没有往这方面去考虑所以就&amp;hellip;&lt;/p&gt;
&lt;p&gt;&lt;del&gt;正如之前看到过 第一个造原子弹的国家才是真正厉害的 因为这是开辟一条从0到1的道路 后面的效仿者已知结果可行再去效仿就容易很多&lt;/del&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;这道题中最麻烦的地方在于如果产生进位会如何影响结果。&lt;/p&gt;
&lt;p&gt;如果一个数末尾有连续k个9，那么对其加1后其数码之和会变化&lt;code&gt;+1 - 9k&lt;/code&gt;。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>CF-#651-div2</title>
      <link>https://rqdmap.top/acm/cf-651-div2/</link>
      <pubDate>Sun, 21 Jun 2020 21:38:35 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/cf-651-div2/</guid>
      <description>&lt;p&gt;值得注意的题：&lt;strong&gt;F&lt;/strong&gt; 树上二分 &amp;amp; 交互&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;显然是$floor(n/2)$&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;为什么一定存在呢？分奇偶项后就容易说明了。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;最开始读错题了，以为必须要奇素因子&amp;hellip;不需要的话只需要分类考虑一下奇数因子的个数和2的个数即可。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;为什么一定存在呢？分奇偶项后就容易说明了。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;最开始读错题了，以为必须要奇素因子&amp;hellip;不需要的话只需要分类考虑一下奇数因子的个数和2的个数即可。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>0619-weekly-test-B</title>
      <link>https://rqdmap.top/acm/0619-weekly-test-b/</link>
      <pubDate>Fri, 19 Jun 2020 21:38:03 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/0619-weekly-test-b/</guid>
      <description>&lt;p&gt;题目要求我们写一个指定语法的程序，要求这个程序能够输出指定fibnacci数列中的某一项，询问至多不超过30项。&lt;/p&gt;
&lt;!--- more ---&gt;
&lt;p&gt;这道题目还是蛮新颖的，虽然不算很难，但是因为坑到我了&amp;hellip;所以还是写篇简短的博客记录一番。&lt;/p&gt;
&lt;p&gt;这道题目可行的程序很多&lt;del&gt;以至于WA了之后不知道怎么改&lt;/del&gt;，我的算法是初始化&lt;code&gt;[n, 0, 1]&lt;/code&gt;之后循环判断当前n是否为1，不是的话将&lt;code&gt;[n, y, x]&lt;/code&gt;变成&lt;code&gt;[n - 1, x, x + y]&lt;/code&gt;，然后再次jump到判断语句处。主要分成三个模块：判断是否为1，对n减一，变换&lt;code&gt;[y, x]&lt;/code&gt;成为&lt;code&gt;[x, x + y]&lt;/code&gt;。结合操作随意构造一番即可。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>对拍程序</title>
      <link>https://rqdmap.top/acm/%E5%AF%B9%E6%8B%8D%E7%A8%8B%E5%BA%8F/</link>
      <pubDate>Thu, 18 Jun 2020 21:55:46 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/%E5%AF%B9%E6%8B%8D%E7%A8%8B%E5%BA%8F/</guid>
      <description>&lt;p&gt;因为今天打比赛队友对拍出了一个错误结果，所以我也趁机自己写了一番这个一直没有实现的技术，用起来还是很舒爽的。&lt;/p&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-a782f82ed75d72f74b7c98e28f881f7b-0-1774547727242&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-a782f82ed75d72f74b7c98e28f881f7b-0-1774547727242&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-a782f82ed75d72f74b7c98e28f881f7b-0-1774547727242&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#bc7a00&#34;&gt;&amp;lt;iostream&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#bc7a00&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 2&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;main&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; argc, &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;char&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;*&lt;/span&gt; argv[]) {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 4&lt;/span&gt;&lt;span&gt;    system(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;g++ ~/Desktop/data/data/main.cpp -std=c++11 -o data.out&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 5&lt;/span&gt;&lt;span&gt;    system(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;g++ ~/Desktop/T/T/main.cpp -std=c++11 -o T.out&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 6&lt;/span&gt;&lt;span&gt;    system(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;g++ ~/Desktop/ttt/ttt/main.cpp -std=c++11 -o ttt.out&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 7&lt;/span&gt;&lt;span&gt;    
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 8&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; times &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 9&lt;/span&gt;&lt;span&gt;    scanf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;%d&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#666&#34;&gt;&amp;amp;&lt;/span&gt;times);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;10&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; cnt &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;11&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;while&lt;/span&gt;(times &lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;12&lt;/span&gt;&lt;span&gt;        times&lt;span style=&#34;color:#666&#34;&gt;--&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;13&lt;/span&gt;&lt;span&gt;        system(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;./data.out &amp;gt;~/Desktop/in.txt&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;14&lt;/span&gt;&lt;span&gt;        system(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;./T.out &amp;lt; ~/Desktop/in.txt &amp;gt; ~/Desktop/out.txt&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;15&lt;/span&gt;&lt;span&gt;        system(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;./ttt.out &amp;lt; ~/Desktop/in.txt &amp;gt; ~/Desktop/ans.txt&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;16&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(system(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;diff ~/Desktop/out.txt ~/Desktop/ans.txt&amp;#34;&lt;/span&gt;)){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;17&lt;/span&gt;&lt;span&gt;            puts(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;Differences occur!&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;18&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;break&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;19&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;20&lt;/span&gt;&lt;span&gt;        printf(&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;No.%d&amp;#39;s OK.&lt;/span&gt;&lt;span style=&#34;color:#b62;font-weight:bold&#34;&gt;\n&lt;/span&gt;&lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#34;&lt;/span&gt;, cnt&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;21&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;22&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;23&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
    </item>
	  
    <item>
      <title>template</title>
      <link>https://rqdmap.top/acm/template/</link>
      <pubDate>Wed, 17 Jun 2020 16:34:39 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/template/</guid>
      <description>&lt;div STYLE=&#34;page-break-after: always;&#34;&gt;&lt;/div&gt;
&lt;div STYLE=&#34;page-break-after: always;&#34;&gt;&lt;/div&gt;
&lt;h2 id=&#34;1-字符串&#34;&gt;1 字符串&lt;/h2&gt;
&lt;h3 id=&#34;trie树&#34;&gt;trie树&lt;/h3&gt;
&lt;p&gt;实现一：数组实现的按键查找&lt;/p&gt;





  
  


&lt;div class=&#34;codeblock&#34; id=&#39;codeblock-8c517aa01eb843c3a9a5748054b6b07b-0-1774547727244&#39;&gt;
&lt;div class=&#34;codetype&#34;&gt; 
  
    cpp
  
&lt;/div&gt;
&lt;div class=&#39;codeblock-tool-container&#39;&gt;
&lt;button class=&#39;codeblock-tool copy-button&#39; onclick=&#34;copyCode(&#39;codeblock-8c517aa01eb843c3a9a5748054b6b07b-0-1774547727244&#39;)&#34;&gt;  &lt;/button&gt;
&lt;button class=&#39;codeblock-tool check-button codeblock-tool-hidden&#39;&gt; 󰄬 &lt;/button&gt;
&lt;/div&gt;
&lt;div class=&#39;codeblock-unfold&#39; onclick=&#34;toggleFold(&#39;codeblock-8c517aa01eb843c3a9a5748054b6b07b-0-1774547727244&#39;)&#34;
&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 1&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; maxn &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;2e5&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;10&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 2&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;const&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; maxsize &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;26&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 3&lt;/span&gt;&lt;span&gt;&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;struct&lt;/span&gt; &lt;span style=&#34;color:#00f;font-weight:bold&#34;&gt;TRIE&lt;/span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 4&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; ch[maxn][maxsize];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 5&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; flag[maxn];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 6&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; top &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 7&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 8&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//按照实际条件进行修改
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt; 9&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;inline&lt;/span&gt; &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;getid&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;char&lt;/span&gt; c){&lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; c &lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt; &lt;span style=&#34;color:#ba2121&#34;&gt;&amp;#39;a&amp;#39;&lt;/span&gt;;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;10&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;11&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#408080;font-style:italic&#34;&gt;//插入长度为n的字符串s[0,..n - 1]
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;12&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;insert&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;char&lt;/span&gt; s[maxn], &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;13&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;14&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;15&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; id &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; getid(s[i]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;16&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;ch[u][id]) ch[u][id] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; top&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;17&lt;/span&gt;&lt;span&gt;            u &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; ch[u][id];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;18&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;19&lt;/span&gt;&lt;span&gt;        flag[u] &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;20&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;21&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;22&lt;/span&gt;&lt;span&gt;    &lt;span style=&#34;color:#b00040&#34;&gt;bool&lt;/span&gt; &lt;span style=&#34;color:#00f&#34;&gt;query&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;char&lt;/span&gt; s[maxn], &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; n){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;23&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; u &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;24&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;for&lt;/span&gt;(&lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; i &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;0&lt;/span&gt;; i &lt;span style=&#34;color:#666&#34;&gt;&amp;lt;&lt;/span&gt; n; i&lt;span style=&#34;color:#666&#34;&gt;++&lt;/span&gt;){
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;25&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#b00040&#34;&gt;int&lt;/span&gt; id &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; getid(s[i]);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;26&lt;/span&gt;&lt;span&gt;            &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(&lt;span style=&#34;color:#666&#34;&gt;!&lt;/span&gt;ch[u][id]) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#008000&#34;&gt;false&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;27&lt;/span&gt;&lt;span&gt;            u &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; ch[u][id];
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;28&lt;/span&gt;&lt;span&gt;        }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;29&lt;/span&gt;&lt;span&gt;        &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;if&lt;/span&gt;(flag[u]) &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#008000&#34;&gt;true&lt;/span&gt;; &lt;span style=&#34;color:#008000;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#008000&#34;&gt;false&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;30&lt;/span&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;31&lt;/span&gt;&lt;span&gt;};&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;实现二：数组实现的按边查找（左儿子右兄弟优化）&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>利用可持久化01Trie解决区间异或一类问题</title>
      <link>https://rqdmap.top/acm/%E5%88%A9%E7%94%A8%E5%8F%AF%E6%8C%81%E4%B9%85%E5%8C%9601trie%E8%A7%A3%E5%86%B3%E5%8C%BA%E9%97%B4%E5%BC%82%E6%88%96%E4%B8%80%E7%B1%BB%E9%97%AE%E9%A2%98/</link>
      <pubDate>Tue, 16 Jun 2020 22:16:25 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/%E5%88%A9%E7%94%A8%E5%8F%AF%E6%8C%81%E4%B9%85%E5%8C%9601trie%E8%A7%A3%E5%86%B3%E5%8C%BA%E9%97%B4%E5%BC%82%E6%88%96%E4%B8%80%E7%B1%BB%E9%97%AE%E9%A2%98/</guid>
      <description>&lt;p&gt;为了补校赛网络的I题，就去看了异或粽子，然后就看到了Trie以及可持久化01Trie，进而就有了这篇博客qaq&lt;/p&gt;
&lt;p&gt;借助这几道题学习一番可持久化01Trie的有关知识&lt;/p&gt;
&lt;p&gt;参考博客：&lt;strong&gt;

  
    
  

&lt;a href=&#34;https://blog.csdn.net/qq_42447015/article/details/97812659&#34; class=external-link &gt;可持久化01Trie + 异或粽子 （精心)&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&#34;p4735-最大异或和&#34;&gt;&lt;strong&gt;

  
    
  

&lt;a href=&#34;https://www.luogu.com.cn/problem/P4735&#34; class=external-link &gt;P4735 最大异或和&lt;/a&gt;&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;题目要求区间中某个位置&lt;code&gt;p∈[L, R]&lt;/code&gt;使得&lt;code&gt;a[p] ^ a[p + 1]^ ... ^ a[n] ^ x&lt;/code&gt;最大，其中&lt;code&gt;p, L, R&lt;/code&gt;给定，允许在该序列末尾动态添加数字。首先根据异或的性质等价转化要求的表达式：``a[p] ^ a[p + 1]^ &amp;hellip; ^ a[n] ^ x = x ^ sum ^ a[1] ^ a[2] ^ &amp;hellip; ^ a[p - 1] `，其中sum是整个序列的异或值；因而在某个给定的状态下，我们只需要找位置p-1使得其前缀异或值和x^sum异或值最大即可。为了完成动态修改、查询的工作，我们使用可持久化01Trie，其思想与主席树类似（&lt;del&gt;尽管我还没学但是不妨碍我学会01Trie&lt;/del&gt;)。&lt;/p&gt;</description>
    </item>
	  
    <item>
      <title>2017_CCPC_HARBIN</title>
      <link>https://rqdmap.top/acm/2017-ccpc-harbin/</link>
      <pubDate>Tue, 16 Jun 2020 19:40:08 +0000</pubDate>
      
      <guid>https://rqdmap.top/acm/2017-ccpc-harbin/</guid>
      <description>&lt;p&gt;新博客的第一篇文章，打算吸取一下之前CSDN写完博客找不到题的教训：对于套题的补题应该设置一些比较明显的目录以待今后查阅，每个题目的题目以及知识点都予以简单的描述。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;

  
    
  

&lt;a href=&#34;https://vjudge.net/contest/378359&#34; class=external-link &gt;2017中国大学生程序设计竞赛-哈尔滨站&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;这好像是一场比较难(&lt;del&gt;但是队友很顶&lt;/del&gt;)的训练赛，然而我又一次死在了计算几何上，并且成为爆交狂魔&amp;hellip;qaq&lt;/p&gt;</description>
    </item>
	 
  </channel>
</rss>
