一道 dp + 图论 + 状压好题
「杂题记录」彩色挂饰
题意简述
给定一张
n
个点
m
条边的无向图,有一些点有颜色,定义颜色相同的点组成的连通块为同色连通块。需要对没有颜色的点进行染色,最小化同色连通块的数量。
无向图满足每个点双的大小
≤s
,给出的颜色分别从为
1
到
k
编号。
n≤105,2<k≤20,s≤6,n−1≤m<ns
对于
10
%
的数据,s=2.
分析
s=2
是一档很有启发性的部分分,可以感受到这就是一个树。
不妨设根节点编号为
1
直接树形 dp,设
f(u,c)
为把以
u
为根节点的子树,u
染成颜色
c
,其余的任意染,最小的同色连通块数量。
f(u,c)=1+(u,v)∈E∑(f(v,c)−1)
一个图怎么做?考虑用圆方树将无向图转化为树,然后进行树形 dp。
f(u,c)
的定义转化为以
u
为根的子树,圆点 或
方点的父亲染成的颜色。感觉是一类圆方树上 dp
的标准套路。 对于圆点:
f(u,c)=1+(u,v)∈E∑(f(v,c)−1)
对于方点: 简单dp 一下就可以了。 注意到
s≤6
,瞎搞一下就可以了。注意以下的集合均指每个将一个点双上的点编号离散后的编号点集。
设:定义在点上的函数
A(x)
为与
x
相连的点集。
设:定义在集合上的函数
C(S)
,表示点集
S
是否连通。
C(∅)C(S)=1=x∈S⋁(C(S∖{x})∧(A(x)∩S=∅))
设:函数
G(S,c)
为将连通块
S
涂成
c
,最小代价。每个连通块对应的子树也算入答案。
G(S,c)=⎩⎨⎧INF,1+x∈S∑(f(x,c)−1)C(S)=0
设:函数H(S)
为将连通块
S
涂上任意一种相同的颜色,最小代价。
H(S)=c=1minkG(S,c).
设:函数
L(S)
为将连通块
S
切成若干块,每一块涂上相同的颜色,最小代价。
L(S)=min{H(S), s⊆SminL(s)+L(S/s)}
就可以求出
f(u,c)=S,u∈SminG(S,c)+L(S补)
转移只需要 80 行就写完了。
#include <cstdio>
#include <cstring>
#include <iostream>
#include <vector>
#include <algorithm>
#include <stack>
#include <cassert>
#include <set>
using namespace std;
const int _ = 4e5 + 100;
const int _K = 30;
int Col[_];
int n, m, k, s;
int head[_];
struct edges{ int node, nxt; } edge[_ << 1]; int tot = 0;
void add(int u, int v){ tot++; edge[tot].node = v; edge[tot].nxt = head[u]; head[u] = tot; }
vector<int> G[_];
set<int> GG[_];
int dfn[_], low[_], dfc = 0, tmp;
int cnt;
stack<int> S;
void tarjan(int now) {
dfn[now] = low[now] = ++dfc; S.push(now);
for(int i = 0; i < (int)G[now].size(); i++) {
int ex = G[now][i];
if(!dfn[ex]) {
tarjan(ex);
low[now] = min(low[now], low[ex]);
if(dfn[now] == low[ex]) {
++cnt;
add(now, cnt); add(cnt, now);
do add(cnt, tmp = S.top()), add(tmp, cnt), S.pop(); while(tmp != ex);
}
} else low[now] = min(low[now], dfn[ex]);
}
}
int popcnt(int S) { int ans = 0; while(S) ans += ((S & 1) != 0), S >>= 1; return S; }
int F[_][_K];
const int _S = 15;
int ver = 0;
int _INT_MAX_;
void d(int now, int fa){
for(int i = head[now]; i; i = edge[i].nxt) {
int ex = edge[i].node; if(ex == fa) continue;
d(ex, now);
}
if(now <= n) {
for(int i = 1; i <= k; i++) {
if(Col[now]) if(Col[now] != i) { F[now][i] = _INT_MAX_; continue; }
int &ans = F[now][i] = 1;
for(int j = head[now]; j; j = edge[j].nxt) {
if(edge[j].node == fa) continue;
ans += F[edge[j].node][i] - 1;
}
}
} else {
static int Link[_S], iLink[_], NodeCnt; NodeCnt = 0;
for(int i = head[now]; i; i = edge[i].nxt) {
int ex = edge[i].node;
Link[++NodeCnt] = ex;
iLink[ex] = NodeCnt;
}
static int A[_S]; static bool C[1 << _S];
for(int i = 1; i <= NodeCnt; i++) {
int &ans = A[i] = 0;
for(int j = 1; j <= NodeCnt; j++){ if(i == j) continue;
int ex = Link[j]; if(GG[Link[i]].find(ex) == GG[Link[i]].end()) continue;
ans |= (1 << (j - 1));
}
}
for(int i = 0; i < (1 << NodeCnt); i++) C[i] = 0;
C[0] = 1; // C[S] 重标号后的点集 S 是否连通.
for(int i = 1; i <= NodeCnt; i++) C[1 << (i - 1)] = 1;
for(int i = 1; i < (1 << NodeCnt); i++){
bool &ans = C[i];
for(int j = 1; j <= NodeCnt; j++){
if(i & (1 << (j - 1))) ; else continue;
ans = ( ans || (C[i ^ (1 << (j - 1))] && ((A[j] & i) != 0)) );
}
}
static int G[1 << _S][_K]; // G[S][c] 把联通块 S 涂上颜色 c. 需要的次数.
for(int i = 1; i < (1 << NodeCnt); i++){
for(int j = 1; j <= k; j++){
int &ans = G[i][j];
if(!C[i]) { ans = _INT_MAX_; continue; }
ans = 1;
for(int l = 1; l <= NodeCnt; l++){
if(i & (1 << (l - 1))) if(l != iLink[fa]) ans += F[Link[l]][j] - 1;// , assert(F[Link[l]][j] > 0);
}
}
}
static int H[1 << _S]; // H[S] 把 连通块 S 涂上同一种颜色 所需要的 最小代价。
H[0] = 0;
for(int i = 1; i < (1 << NodeCnt); i++){
int &ans = H[i] = _INT_MAX_;
for(int j = 1; j <= k; j++) ans = min(ans, G[i][j]);
}
static int L[1 << _S]; L[0] = 0; // L[S] 把 连通块 S 分成若干块,每一块分别涂上相同的颜色 最小代价。
for(int i = 1; i < (1 << NodeCnt); i++){
int &ans = L[i] = H[i];
for(int S0 = i; S0; S0 = (S0 - 1) & i){
ans = min(ans, L[S0] + L[i ^ S0]);
}
}
for(int i = 1; i <= k; i++){
int &ans = F[now][i] = _INT_MAX_;
if(Col[fa]) if(Col[fa] != i) continue;
int S = (1 << (NodeCnt)) - 1; S ^= (1 << (iLink[fa] - 1));
ans = min(ans, G[(1 << (iLink[fa] - 1))][i] + L[S]);
for(int j = S; j ; j = (j - 1) & S){
ans = min(ans, G[j | (1 << (iLink[fa] - 1))][i] + L[S ^ j]);
}
}
}
}
int main(){
// freopen("in.txt", "r", stdin);
ios::sync_with_stdio(false);
cin >> n >> m >> k >> s; cnt = n; _INT_MAX_ = 3 * n;
for(int i = 1; i <= n; i++) cin >> Col[i];
for(int i = 1; i <= m; i++){
int u, v; cin >> u >> v;
G[u].push_back(v); GG[u].insert(v);
G[v].push_back(u); GG[v].insert(u);
}
tarjan(1);
d(1, 1);
int ans = _INT_MAX_;
for(int i = 1; i <= k; i++) ans = min(ans, F[1][i]);
printf("%d", ans);
return 0;
}
🔗 Source Hash:
34e1f3705a1f0e1a4755e793665b424f5cef6901d4da5e2752a40ded97ff3309
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_「杂题记录」彩色挂饰.md', '--filter', 'pandoc-crossref', '--filter', 'pandoc-katex', '--template=cache/pandoc_html_template.html', '-o', 'cache.../oi-blog_「杂题记录」彩色挂饰.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.../6523dbdd8a.pdf.md', '-o', 'cache/6523dbdd8a.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{color}
\usepackage{fancyvrb}
\newcommand{\VerbBar}{|}
\newcommand{\VERB}{\Verb[commandchars=\\\{\}]}
\DefineVerbatimEnvironment{Highlighting}{Verbatim}{commandchars=\\\{\}}
% Add ',fontsize=\small' for more characters per line
\newenvironment{Shaded}{}{}
\newcommand{\AlertTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{#1}}}
\newcommand{\AnnotationTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}}
\newcommand{\AttributeTok}[1]{\textcolor[rgb]{0.49,0.56,0.16}{#1}}
\newcommand{\BaseNTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{#1}}
\newcommand{\BuiltInTok}[1]{\textcolor[rgb]{0.00,0.50,0.00}{#1}}
\newcommand{\CharTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}}
\newcommand{\CommentTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textit{#1}}}
\newcommand{\CommentVarTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}}
\newcommand{\ConstantTok}[1]{\textcolor[rgb]{0.53,0.00,0.00}{#1}}
\newcommand{\ControlFlowTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{\textbf{#1}}}
\newcommand{\DataTypeTok}[1]{\textcolor[rgb]{0.56,0.13,0.00}{#1}}
\newcommand{\DecValTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{#1}}
\newcommand{\DocumentationTok}[1]{\textcolor[rgb]{0.73,0.13,0.13}{\textit{#1}}}
\newcommand{\ErrorTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{#1}}}
\newcommand{\ExtensionTok}[1]{#1}
\newcommand{\FloatTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{#1}}
\newcommand{\FunctionTok}[1]{\textcolor[rgb]{0.02,0.16,0.49}{#1}}
\newcommand{\ImportTok}[1]{\textcolor[rgb]{0.00,0.50,0.00}{\textbf{#1}}}
\newcommand{\InformationTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}}
\newcommand{\KeywordTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{\textbf{#1}}}
\newcommand{\NormalTok}[1]{#1}
\newcommand{\OperatorTok}[1]{\textcolor[rgb]{0.40,0.40,0.40}{#1}}
\newcommand{\OtherTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{#1}}
\newcommand{\PreprocessorTok}[1]{\textcolor[rgb]{0.74,0.48,0.00}{#1}}
\newcommand{\RegionMarkerTok}[1]{#1}
\newcommand{\SpecialCharTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}}
\newcommand{\SpecialStringTok}[1]{\textcolor[rgb]{0.73,0.40,0.53}{#1}}
\newcommand{\StringTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}}
\newcommand{\VariableTok}[1]{\textcolor[rgb]{0.10,0.09,0.49}{#1}}
\newcommand{\VerbatimStringTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}}
\newcommand{\WarningTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}}
\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={「杂题记录」彩色挂饰},
pdfauthor={Jiayi Su (ShuYuMo)},
hidelinks,
pdfcreator={LaTeX via pandoc}}
\title{「杂题记录」彩色挂饰}
\author{Jiayi Su (ShuYuMo)}
\date{2021-01-19 15:35:06}
\begin{document}
\maketitle
\setstretch{1.3}
一道 dp + 图论 + 状压好题
\section{「杂题记录」彩色挂饰}\label{ux6742ux9898ux8bb0ux5f55ux5f69ux8272ux6302ux9970}
\subsection{题意简述}\label{ux9898ux610fux7b80ux8ff0}
给定一张 \(n\) 个点 \(m\)
条边的无向图,有一些点有颜色,定义颜色相同的点组成的连通块为同色连通块。需要对没有颜色的点进行染色,最小化同色连通块的数量。
无向图满足每个点双的大小 \(\le s\) ,给出的颜色分别从为 \(1\) 到 \(k\)
编号。
\(n\le 10^5, 2 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)))
(.../fancyvrb.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 116.
[1]
Missing character: There is no 补 (U+8865) in font LatinModernMath-Regular/OT:sc
ript=math;language=dflt;+ssty=0;!
Missing character: There is no 补 (U+8865) in font LatinModernMath-Regular/OT:sc
ript=math;language=dflt;+ssty=0;!
Package xeCJK Warning: Unknown CJK family `\CJKttdefault' is being ignored.
(xeCJK)
(xeCJK) Try to use `\setCJKmonofont[<...>]{<...>}' to define
(xeCJK) it.
[2]
LaTeX Font Warning: Font shape `TU/ARPLUKaiCN(0)/m/it' undefined
(Font) using `TU/ARPLUKaiCN(0)/m/n' instead on input line 250.
[3] [4] [5] (.../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 (5 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)))
(.../fancyvrb.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 116.
[1]
Missing character: There is no 补 (U+8865) in font LatinModernMath-Regular/OT:sc
ript=math;language=dflt;+ssty=0;!
Missing character: There is no 补 (U+8865) in font LatinModernMath-Regular/OT:sc
ript=math;language=dflt;+ssty=0;!
Package xeCJK Warning: Unknown CJK family `\CJKttdefault' is being ignored.
(xeCJK)
(xeCJK) Try to use `\setCJKmonofont[<...>]{<...>}' to define
(xeCJK) it.
[2]
LaTeX Font Warning: Font shape `TU/ARPLUKaiCN(0)/m/it' undefined
(Font) using `TU/ARPLUKaiCN(0)/m/n' instead on input line 250.
[3] [4] [5] (.../input.aux)
LaTeX Font Warning: Some font shapes were not available, defaults substituted.
)
Output written on .../input.pdf (5 pages).
Transcript written on .../input.log.
[WARNING] Missing character: There is no 补 (U+8865) (U+8865) in font LatinModernMath-Regular/OT:sc
[WARNING] Missing character: There is no 补 (U+8865) (U+8865) in font LatinModernMath-Regular/OT:sc