小 D 最近在网上发现了一款小游戏。游戏的规则如下:
- 游戏的目标是按照编号
1→n
顺序杀掉
n
条巨龙,每条巨龙拥有一个初始的生命值
ai
。同时每条巨龙拥有恢复能力,当其使用恢复能力时,它的生命值就会每次增加
pi
,直至生命值非负。只有在攻击结束后且当生命值 恰好 为
0
时它才会死去。
 
- 游戏开始时玩家拥有
m
把攻击力已知的剑,每次面对巨龙时,玩家只能选择一把剑,当杀死巨龙后这把剑就会消失,但作为奖励,玩家会获得全新的一把剑。
 
小 D 觉得这款游戏十分无聊,但最快通关的玩家可以获得 ION2018
的参赛资格,于是小 D
决定写一个笨笨的机器人帮她通关这款游戏,她写的机器人遵循以下规则:
- 每次面对巨龙时,机器人会选择当前拥有的,攻击力不高于巨龙初始生命值中攻击力最大的一把剑作为武器。如果没有这样的剑,则选择
攻击力最低 的一把剑作为武器。
 
- 机器人面对每条巨龙,它都会使用上一步中选择的剑攻击巨龙固定的
x
次,使巨龙的生命值减少
x×ATK
。
 
- 之后,巨龙会不断使用恢复能力,每次恢复
pi
生命值。若在使用恢复能力前或某一次恢复后其生命值为
0
,则巨龙死亡,玩家通过本关。
 
那么显然机器人的攻击次数是决定能否最快通关这款游戏的关键。小 D
现在得知了每条巨龙的所有属性,她想考考你,你知道应该将机器人的攻击次数
x
设置为多少,才能用最少的攻击次数通关游戏吗?
当然如果无论设置成多少都无法通关游戏,输出
−1.
| 测试点编号 | 
n | 
m | 
pi | 
ai | 
攻击力 | 
其他限制 | 
| 1 | 
≤105 | 
=1 | 
=1 | 
≤105 | 
=1 | 
无 | 
| 2 | 
≤105 | 
=1 | 
=1 | 
≤105 | 
=1 | 
无 | 
| 3 | 
≤105 | 
=1 | 
=1 | 
≤105 | 
≤105 | 
无 | 
| 4 | 
≤105 | 
=1 | 
=1 | 
≤105 | 
≤105 | 
无 | 
| 5 | 
≤103 | 
≤103 | 
≤105 | 
≤105 | 
≤105 | 
特性 1、特性 2 | 
| 6 | 
≤103 | 
≤103 | 
≤105 | 
≤105 | 
≤105 | 
特性 1、特性 2 | 
| 7 | 
≤103 | 
≤103 | 
≤105 | 
≤105 | 
≤105 | 
特性 1、特性 2 | 
| 8 | 
=1 | 
=1 | 
≤108 | 
≤108 | 
≤106 | 
特性 1 | 
| 9 | 
=1 | 
=1 | 
≤108 | 
≤108 | 
≤106 | 
特性 1 | 
| 10 | 
=1 | 
=1 | 
≤108 | 
≤108 | 
≤106 | 
特性 1 | 
| 11 | 
=1 | 
=1 | 
≤108 | 
≤108 | 
≤106 | 
特性 1 | 
| 12 | 
=1 | 
=1 | 
≤108 | 
≤108 | 
≤106 | 
特性 1 | 
| 13 | 
=1 | 
=1 | 
≤108 | 
≤108 | 
≤106 | 
特性 1 | 
| 14 | 
=105 | 
=105 | 
=1 | 
≤108 | 
≤106 | 
无特殊限制 | 
| 15 | 
=105 | 
=105 | 
=1 | 
≤108 | 
≤106 | 
无特殊限制 | 
| 16 | 
≤105 | 
≤105 | 
所有
pi
是质数 | 
≤1012 | 
≤106 | 
特性 1 | 
| 17 | 
≤105 | 
≤105 | 
所有
pi
是质数 | 
≤1012 | 
≤106 | 
特性 1 | 
| 18 | 
≤105 | 
≤105 | 
无特殊限制 | 
≤1012 | 
≤106 | 
特性 1 | 
| 19 | 
≤105 | 
≤105 | 
无特殊限制 | 
≤1012 | 
≤106 | 
特性 1 | 
| 20 | 
≤105 | 
≤105 | 
无特殊限制 | 
≤1012 | 
≤106 | 
特性 1 | 
特性 1 是指:对于任意的
i,ai≤pi。
特性 2
是指:lcm(pi)≤106,即所有
pi
的 最小公倍数 不大于
106。
对于所有的测试点,T≤5,所有武器的攻击力
≤106,所有
pi
的最小公倍数
≤1012。
保证 $ T, n, m $ 均为正整数。
分析
易知这可以直接转化为 exCRT 问题。
主要记录一下不定方程的获取所有解问题。
不定方程形如:
ax+by=c
其中
x,y
为未知数,
a,b
为常数。
裴蜀定理 指出:以上方程有整数解的充要条件为
(a,b)∣c。
扩展欧几里得 可以解出形如:
ax+by=(a,b)
不定方程的一组整数解。
考虑构造以下式子:
a(x+(a,b)b)+b(y−(a,b)a)=(a,b)
不难发现如果令:
x′=x+(a,b)b,y′=y−(a,b)a,这样构造出来的所有解
x′,y′
都能成为不定方程的一组解,可以证明这样的构造方式的调整系数是最小的,能够取到所有解。(个人喜欢把
(a,b)∗
称为调整系数)
考虑到上面的 扩展欧几里得 解出的方程常数项等于
(a,b),而不是
c
,考虑将解和
(a,b)
一同乘
(a,b)c
即可。
需要注意,乘完
(a,b)c
后,调整系数 不变。
关于题目,也没有题解里面说的那么卡…注意一下数据范围里面
Pi=1
的情况即可。
关于代码,换了一种 exCRT 的写法,应该会好背很多,。
                                     
                                    
                                    
                                                                            
                                        
                                            
                                            
                                                
                                                    
                                                        
                                                        
                                                            🔗 Source Hash:
                                                            a60c6c16ee17342e727f508982432cfc00dbd29591cbac5574f2ffb8fd5cea7e
                                                        
                                                     
                                                
                                             
                                        
                    
                    
                                            
                                                Build Logs
                                                Build Log - Filtered
================================================
📋 Information:
• Path information has been filtered for privacy protection
• File names are preserved for debugging purposes  
• All build status and error messages are kept intact
🔍 Filter Rules:
• /absolute/path/file.ext → .../file.ext
• /home/username → .../[user]
• /tmp/files → .../[temp]
• /usr/share/packages → .../[system]
================================================
html log:
CMD: ['pandoc', '-s', 'cache/oi-blog_「杂题记录」「NOI 2018」屠龙勇士.md', '--filter', 'pandoc-crossref', '--filter', 'pandoc-katex', '--template=cache/pandoc_html_template.html', '-o', 'cache/oi-blog_「杂题记录」「NOI 2018」屠龙勇士.md.html', '--metadata', '--verbose', '--highlight-style=tango']
STDOUT: 
STDERR: WARNING: pandoc-crossref was compiled with pandoc 3.6.2 but is being run through 3.6.4. This is not supported. Strange things may (and likely will) happen silently.
====================================================================================================
pdf log:
CMD: ['pandoc', '-s', 'cache.../f9620bd055.pdf.md', '-o', 'cache/f9620bd055.pdf', '-H', 'static/pandoc.header.tex', '--pdf-engine=xelatex', '--verbose']
STDOUT: 
STDERR: [INFO] Loaded static.../pandoc.header.tex from static.../pandoc.header.tex
[INFO] Not rendering RawBlock (Format "html") ""
[INFO] [makePDF] Temp dir:
  .../[temp]
[INFO] [makePDF] Command line:
  xelatex "-halt-on-error" "-interaction" "nonstopmode" "-output-directory" ".../[temp] ".../[temp]
[INFO] [makePDF] Relevant environment variables:
  ("TEXINPUTS",".../[temp]
  ("TEXMFOUTPUT",".../[temp]
  ("SHELL","/bin/bash")
  ("PWD",".../[user]/projects/blog")
  ("HOME",".../[user]
  ("LANG","zh_CN.UTF-8")
  ("PATH",".../[user]/.local/bin:.../[user]/.cargo/bin:.../[user]/miniconda3/envs/myblog/bin:.../[user]/miniconda3/condabin:.../[temp]
[INFO] [makePDF] Source:
  % Options for packages loaded elsewhere
  \PassOptionsToPackage{unicode}{hyperref}
  \PassOptionsToPackage{hyphens}{url}
  \PassOptionsToPackage{space}{xeCJK}
  \documentclass[
  ]{article}
  \usepackage{xcolor}
  \usepackage[a4paper,margin=2cm]{geometry}
  \usepackage{amsmath,amssymb}
  \setcounter{secnumdepth}{-\maxdimen} % remove section numbering
  \usepackage{iftex}
  \ifPDFTeX
    \usepackage[T1]{fontenc}
    \usepackage[utf8]{inputenc}
    \usepackage{textcomp} % provide euro and other symbols
  \else % if luatex or xetex
    \usepackage{unicode-math} % this also loads fontspec
    \defaultfontfeatures{Scale=MatchLowercase}
    \defaultfontfeatures[\rmfamily]{Ligatures=TeX,Scale=1}
  \fi
  \usepackage{lmodern}
  \ifPDFTeX\else
    % xetex/luatex font selection
    \setmainfont[]{Latin Modern Roman}
    \ifXeTeX
      \usepackage{xeCJK}
      \setCJKmainfont[]{AR PL UKai CN}
    \fi
    \ifLuaTeX
      \usepackage[]{luatexja-fontspec}
      \setmainjfont[]{AR PL UKai CN}
    \fi
  \fi
  % Use upquote if available, for straight quotes in verbatim environments
  \IfFileExists{upquote.sty}{\usepackage{upquote}}{}
  \IfFileExists{microtype.sty}{% use microtype if available
    \usepackage[]{microtype}
    \UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
  }{}
  \usepackage{setspace}
  \makeatletter
  \@ifundefined{KOMAClassName}{% if non-KOMA class
    \IfFileExists{parskip.sty}{%
      \usepackage{parskip}
    }{% else
      \setlength{\parindent}{0pt}
      \setlength{\parskip}{6pt plus 2pt minus 1pt}}
  }{% if KOMA class
    \KOMAoptions{parskip=half}}
  \makeatother
  \usepackage{longtable,booktabs,array}
  \usepackage{calc} % for calculating minipage widths
  % Correct order of tables after \paragraph or \subparagraph
  \usepackage{etoolbox}
  \makeatletter
  \patchcmd\longtable{\par}{\if@noskipsec\mbox{}\fi\par}{}{}
  \makeatother
  % Allow footnotes in longtable head/foot
  \IfFileExists{footnotehyper.sty}{\usepackage{footnotehyper}}{\usepackage{footnote}}
  \makesavenoteenv{longtable}
  \setlength{\emergencystretch}{3em} % prevent overfull lines
  \providecommand{\tightlist}{%
    \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
  % \usepackage{xeCJK}
  % \setCJKmainfont{AR PL UKai CN}
  % \usepackage{unicode-math}
  
  \setmathfont{Latin Modern Math}
  \usepackage{bookmark}
  \IfFileExists{xurl.sty}{\usepackage{xurl}}{} % add URL line breaks if available
  \urlstyle{same}
  \hypersetup{
    pdftitle={「杂题记录」「NOI 2018」屠龙勇士},
    pdfauthor={Jiayi Su (ShuYuMo)},
    hidelinks,
    pdfcreator={LaTeX via pandoc}}
  
  \title{「杂题记录」「NOI 2018」屠龙勇士}
  \author{Jiayi Su (ShuYuMo)}
  \date{2021-02-02 15:35:06}
  
  \begin{document}
  \maketitle
  
  \setstretch{1.3}
  小 D 最近在网上发现了一款小游戏。游戏的规则如下:
  
  \begin{itemize}
  \tightlist
  \item
    游戏的目标是按照编号 \(1 \rightarrow n\) 顺序杀掉 \(n\)
    条巨龙,每条巨龙拥有一个初始的生命值 \(a_i\)
    。同时每条巨龙拥有恢复能力,当其使用恢复能力时,它的生命值就会每次增加
    \(p_i\) ,直至生命值非负。只有在攻击结束后且当生命值 \textbf{恰好} 为
    \(0\) 时它才会死去。
  \item
    游戏开始时玩家拥有 \(m\)
    把攻击力已知的剑,每次面对巨龙时,玩家只能选择一把剑,当杀死巨龙后这把剑就会消失,但作为奖励,玩家会获得全新的一把剑。
  \end{itemize}
  
  小 D 觉得这款游戏十分无聊,但最快通关的玩家可以获得 ION2018
  的参赛资格,于是小 D
  决定写一个笨笨的机器人帮她通关这款游戏,她写的机器人遵循以下规则:
  
  \begin{itemize}
  \tightlist
  \item
    每次面对巨龙时,机器人会选择当前拥有的,攻击力不高于巨龙初始生命值中攻击力最大的一把剑作为武器。如果没有这样的剑,则选择
    \textbf{攻击力最低} 的一把剑作为武器。
  \item
    机器人面对每条巨龙,它都会使用上一步中选择的剑攻击巨龙固定的 \(x\)
    次,使巨龙的生命值减少 \(x \times ATK\) 。
  \item
    之后,巨龙会不断使用恢复能力,每次恢复 \(p_i\)
    生命值。若在使用恢复能力前或某一次恢复后其生命值为 \(0\)
    ,则巨龙死亡,玩家通过本关。
  \end{itemize}
  
  那么显然机器人的攻击次数是决定能否最快通关这款游戏的关键。小 D
  现在得知了每条巨龙的所有属性,她想考考你,你知道应该将机器人的攻击次数
  \(x\) 设置为多少,才能用最少的攻击次数通关游戏吗?
  
  当然如果无论设置成多少都无法通关游戏,输出 \(-1\).
  
  \begin{longtable}[]{@{}
    >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1190}}
    >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1190}}
    >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1190}}
    >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.2024}}
    >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1548}}
    >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1190}}
    >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1667}}@{}}
  \toprule\noalign{}
  \begin{minipage}[b]{\linewidth}\raggedright
  测试点编号
  \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
  \(n\)
  \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
  \(m\)
  \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
  \(p_i\)
  \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
  \(a_i\)
  \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
  攻击力
  \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
  其他限制
  \end{minipage} \\
  \midrule\noalign{}
  \endhead
  \bottomrule\noalign{}
  \endlastfoot
  1 & \(\le 10^5\) & \(=1\) & \(=1\) & \(\le 10^5\) & \(=1\) & 无 \\
  2 & \(\le 10^5\) & \(=1\) & \(=1\) & \(\le 10^5\) & \(=1\) & 无 \\
  3 & \(\le 10^5\) & \(=1\) & \(=1\) & \(\le 10^5\) & \(\le 10^5\) & 无 \\
  4 & \(\le 10^5\) & \(=1\) & \(=1\) & \(\le 10^5\) & \(\le 10^5\) & 无 \\
  5 & \(\le 10^3\) & \(\le 10^3\) & \(\le 10^5\) & \(\le 10^5\) &
  \(\le 10^5\) & 特性 1、特性 2 \\
  6 & \(\le 10^3\) & \(\le 10^3\) & \(\le 10^5\) & \(\le 10^5\) &
  \(\le 10^5\) & 特性 1、特性 2 \\
  7 & \(\le 10^3\) & \(\le 10^3\) & \(\le 10^5\) & \(\le 10^5\) &
  \(\le 10^5\) & 特性 1、特性 2 \\
  8 & \(=1\) & \(=1\) & \(\le 10^8\) & \(\le 10^8\) & \(\le 10^6\) & 特性
  1 \\
  9 & \(=1\) & \(=1\) & \(\le 10^8\) & \(\le 10^8\) & \(\le 10^6\) & 特性
  1 \\
  10 & \(=1\) & \(=1\) & \(\le 10^8\) & \(\le 10^8\) & \(\le 10^6\) & 特性
  1 \\
  11 & \(=1\) & \(=1\) & \(\le 10^8\) & \(\le 10^8\) & \(\le 10^6\) & 特性
  1 \\
  12 & \(=1\) & \(=1\) & \(\le 10^8\) & \(\le 10^8\) & \(\le 10^6\) & 特性
  1 \\
  13 & \(=1\) & \(=1\) & \(\le 10^8\) & \(\le 10^8\) & \(\le 10^6\) & 特性
  1 \\
  14 & \(=10^5\) & \(=10^5\) & \(=1\) & \(\le 10^8\) & \(\le 10^6\) &
  无特殊限制 \\
  15 & \(=10^5\) & \(=10^5\) & \(=1\) & \(\le 10^8\) & \(\le 10^6\) &
  无特殊限制 \\
  16 & \(\le 10^5\) & \(\le 10^5\) & 所有 \(p_i\) 是质数 & \(\le 10^{12}\)
  & \(\le 10^6\) & 特性 1 \\
  17 & \(\le 10^5\) & \(\le 10^5\) & 所有 \(p_i\) 是质数 & \(\le 10^{12}\)
  & \(\le 10^6\) & 特性 1 \\
  18 & \(\le 10^5\) & \(\le 10^5\) & 无特殊限制 & \(\le 10^{12}\) &
  \(\le 10^6\) & 特性 1 \\
  19 & \(\le 10^5\) & \(\le 10^5\) & 无特殊限制 & \(\le 10^{12}\) &
  \(\le 10^6\) & 特性 1 \\
  20 & \(\le 10^5\) & \(\le 10^5\) & 无特殊限制 & \(\le 10^{12}\) &
  \(\le 10^6\) & 特性 1 \\
  \end{longtable}
  
  特性 1 是指:对于任意的 \(i\),\(a_i \le p_i\)。
  
  特性 2 是指:\(\operatorname{lcm}(p_i) \le 10^6\),即所有 \(p_i\) 的
  \textbf{最小公倍数} 不大于 \(10^6\)。
  
  对于所有的测试点,\(T \le 5\),所有武器的攻击力 \(\le 10^6\),所有
  \(p_i\) 的最小公倍数 \(\le 10^{12}\)。
  
  保证 \$ T, n, m \$ 均为正整数。
  
  \subsection{分析}\label{ux5206ux6790}
  
  易知这可以直接转化为 exCRT 问题。
  
  主要记录一下不定方程的获取所有解问题。
  
  不定方程形如: \[
  ax+by=c
  \] 其中 \(x, y\) 为未知数, \(a, b\) 为常数。
  
  \textbf{裴蜀定理} 指出:以上方程有整数解的充要条件为 \((a, b)|c\)。
  
  \textbf{扩展欧几里得} 可以解出形如: \[
  ax+by=(a, b)
  \] 不定方程的一组整数解。
  
  考虑构造以下式子: \[
  a\left(x+\frac{b}{(a, b)}\right)+b\left(y-\frac{a}{(a, b)}\right)=(a, b)
  \] 不难发现如果令:
  \(x' = x+\frac{b}{(a, b)}, y'=y-\frac{a}{(a, b)}\),这样构造出来的所有解
  \(x', y'\)
  都能成为不定方程的一组解,可以证明这样的构造方式的\emph{调整系数}是最小的,能够取到所有解。(个人喜欢把
  \(\frac{*}{(a, b)}\) 称为\emph{调整系数})
  
  考虑到上面的 \textbf{扩展欧几里得} 解出的方程常数项等于
  \((a, b)\),而不是 \(c\) ,考虑将解和 \((a, b)\) 一同乘
  \(\frac{c}{(a, b)}\) 即可。
  
  需要注意,乘完 \(\frac{c}{(a, b)}\) 后,调整系数 \textbf{不变}。
  
  关于题目,也没有题解里面说的那么卡…注意一下数据范围里面 \(P_i = 1\)
  的情况即可。
  
  关于代码,换了一种 exCRT 的写法,应该会好背很多,。
  
  \end{document}
[INFO] [makePDF] LaTeX run number 1
[INFO] [makePDF] LaTeX output
  This is XeTeX, Version 3.141592653-2.6-0.999995 (TeX Live 2023/Debian) (preloaded format=xelatex)
   restricted \write18 enabled.
  entering extended mode
  (.../input.tex
  LaTeX2e <2023-11-01> patch level 1
  L3 programming layer <2024-01-22>
  (.../article.cls
  Document Class: article 2023/05/17 v1.4n Standard LaTeX document class
  (.../[system]
  (.../xcolor.sty
  (.../color.cfg)
  (.../xetex.def)
  (.../[system]
  (.../geometry.sty
  (.../keyval.sty)
  (.../ifvtex.sty
  (.../iftex.sty)))
  (.../amsmath.sty
  For additional information on amsmath, use the `?' option.
  (.../amstext.sty
  (.../amsgen.sty))
  (.../amsbsy.sty)
  (.../amsopn.sty))
  (.../amssymb.sty
  (.../amsfonts.sty))
  (.../unicode-math.sty
  (.../expl3.sty
  (.../l3backend-xetex.def))
  (.../unicode-math-xetex.sty
  (.../xparse.sty)
  (.../l3keys2e.sty)
  (.../fontspec.sty
  (.../fontspec-xetex.sty
  (.../fontenc.sty)
  (.../fontspec.cfg)))
  (.../fix-cm.sty
  (.../ts1enc.def))
  (.../unicode-math-table.tex)))
  (.../lmodern.sty)
  (.../xeCJK.sty
  (.../ctexhook.sty)
  (.../xtemplate.sty)
  (.../xeCJK.cfg))
  (.../upquote.sty
  (.../textcomp.sty))
  (.../microtype.sty
  (.../etoolbox.sty)
  (.../microtype-xetex.def)
  (.../microtype.cfg))
  (.../setspace.sty)
  (.../parskip.sty
  (.../kvoptions.sty
  (.../ltxcmds.sty)
  (.../kvsetkeys.sty)))
  (.../longtable.sty)
  (.../booktabs.sty)
  (.../array.sty)
  (.../calc.sty)
  (.../footnotehyper.sty)
  (.../bookmark.sty
  (.../hyperref.sty
  (.../kvdefinekeys.sty)
  (.../pdfescape.sty
  (.../pdftexcmds.sty
  (.../infwarerr.sty)))
  (.../hycolor.sty)
  (.../auxhook.sty)
  (.../nameref.sty
  (.../refcount.sty)
  (.../gettitlestring.sty))
  (.../pd1enc.def)
  (.../intcalc.sty)
  (.../puenc.def)
  (.../url.sty)
  (.../bitset.sty
  (.../bigintcalc.sty))
  (.../atbegshi-ltx.sty))
  (.../hxetex.def
  (.../stringenc.sty)
  (.../rerunfilecheck.sty
  (.../atveryend-ltx.sty)
  (.../uniquecounter.sty)))
  (.../bkm-dvipdfm.def))
  (.../xurl.sty)
  No file input.aux.
  *geometry* driver: auto-detecting
  *geometry* detected driver: xetex
  (.../mt-LatinModernRoman.cfg)
  
  Package hyperref Warning: Rerun to get /PageLabels entry.
  
  (.../omllmm.fd)
  (.../umsa.fd)
  (.../mt-msa.cfg)
  (.../umsb.fd)
  (.../mt-msb.cfg)
  
  LaTeX Font Warning: Font shape `TU/ARPLUKaiCN(0)/b/n' undefined
  (Font)              using `TU/ARPLUKaiCN(0)/m/n' instead on input line 94.
  
  [1]
  
  LaTeX Font Warning: Font shape `TU/ARPLUKaiCN(0)/m/it' undefined
  (Font)              using `TU/ARPLUKaiCN(0)/m/n' instead on input line 222.
  
  [2] (.../input.aux)
  
  LaTeX Font Warning: Some font shapes were not available, defaults substituted.
  
  
  LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
  
   )
  Output written on .../input.pdf (2 pages).
  Transcript written on .../input.log.
[INFO] [makePDF] Rerun needed
  Package hyperref Warning: Rerun to get /PageLabels entry.
  LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
[INFO] [makePDF] LaTeX run number 2
[INFO] [makePDF] LaTeX output
  This is XeTeX, Version 3.141592653-2.6-0.999995 (TeX Live 2023/Debian) (preloaded format=xelatex)
   restricted \write18 enabled.
  entering extended mode
  (.../input.tex
  LaTeX2e <2023-11-01> patch level 1
  L3 programming layer <2024-01-22>
  (.../article.cls
  Document Class: article 2023/05/17 v1.4n Standard LaTeX document class
  (.../[system]
  (.../xcolor.sty
  (.../color.cfg)
  (.../xetex.def)
  (.../[system]
  (.../geometry.sty
  (.../keyval.sty)
  (.../ifvtex.sty
  (.../iftex.sty)))
  (.../amsmath.sty
  For additional information on amsmath, use the `?' option.
  (.../amstext.sty
  (.../amsgen.sty))
  (.../amsbsy.sty)
  (.../amsopn.sty))
  (.../amssymb.sty
  (.../amsfonts.sty))
  (.../unicode-math.sty
  (.../expl3.sty
  (.../l3backend-xetex.def))
  (.../unicode-math-xetex.sty
  (.../xparse.sty)
  (.../l3keys2e.sty)
  (.../fontspec.sty
  (.../fontspec-xetex.sty
  (.../fontenc.sty)
  (.../fontspec.cfg)))
  (.../fix-cm.sty
  (.../ts1enc.def))
  (.../unicode-math-table.tex)))
  (.../lmodern.sty)
  (.../xeCJK.sty
  (.../ctexhook.sty)
  (.../xtemplate.sty)
  (.../xeCJK.cfg))
  (.../upquote.sty
  (.../textcomp.sty))
  (.../microtype.sty
  (.../etoolbox.sty)
  (.../microtype-xetex.def)
  (.../microtype.cfg))
  (.../setspace.sty)
  (.../parskip.sty
  (.../kvoptions.sty
  (.../ltxcmds.sty)
  (.../kvsetkeys.sty)))
  (.../longtable.sty)
  (.../booktabs.sty)
  (.../array.sty)
  (.../calc.sty)
  (.../footnotehyper.sty)
  (.../bookmark.sty
  (.../hyperref.sty
  (.../kvdefinekeys.sty)
  (.../pdfescape.sty
  (.../pdftexcmds.sty
  (.../infwarerr.sty)))
  (.../hycolor.sty)
  (.../auxhook.sty)
  (.../nameref.sty
  (.../refcount.sty)
  (.../gettitlestring.sty))
  (.../pd1enc.def)
  (.../intcalc.sty)
  (.../puenc.def)
  (.../url.sty)
  (.../bitset.sty
  (.../bigintcalc.sty))
  (.../atbegshi-ltx.sty))
  (.../hxetex.def
  (.../stringenc.sty)
  (.../rerunfilecheck.sty
  (.../atveryend-ltx.sty)
  (.../uniquecounter.sty)))
  (.../bkm-dvipdfm.def))
  (.../xurl.sty)
  (.../input.aux)
  *geometry* driver: auto-detecting
  *geometry* detected driver: xetex
  (.../mt-LatinModernRoman.cfg)
  (.../omllmm.fd)
  (.../umsa.fd)
  (.../mt-msa.cfg)
  (.../umsb.fd)
  (.../mt-msb.cfg)
  
  LaTeX Font Warning: Font shape `TU/ARPLUKaiCN(0)/b/n' undefined
  (Font)              using `TU/ARPLUKaiCN(0)/m/n' instead on input line 94.
  
  [1]
  
  LaTeX Font Warning: Font shape `TU/ARPLUKaiCN(0)/m/it' undefined
  (Font)              using `TU/ARPLUKaiCN(0)/m/n' instead on input line 222.
  
  [2] (.../input.aux)
  
  LaTeX Font Warning: Some font shapes were not available, defaults substituted.
  
   )
  Output written on .../input.pdf (2 pages).
  Transcript written on .../input.log.