题目描述

给出N个点,及你的出发点K.

接下来N-1行描述有关边的开始点,结束点,边长.保证图中不会有环

接下来给出数字J,代表你要走多少个点.

接下来J个数字,代表你要走过的点的编号.当然你可以自己选择行进的路线

不一定按给定编号顺序前行,求走过的最短距离。

输入格式

第一行给出N,K。2 <= N<= 50000,1<=K<=N

接下来N-1行,每行三个数,进来描述这个地图中的边,边长距离<=1000

接下来给出一个数字J,1<=J <= N-1代表你希望走过的J个点。

最后一行给出J个数字,代表点的编号。1<=编号<=N,且不等于K

输出格式

如题


显然,我们只往要去的点走,并且一条边最多经过两次(去和回)。我们可以求出所有要走过的点到根节点的路径,把它们取个交集,得到的集合里的边权乘2再减去最深的目的地到根节点的距离就是答案了。

ans=sum*2-maxlenth

maxlenth容易得到,这题的关键就是求出sum。

其实可以用到一点树形dp的思想,如果当前点被经过,那么当前点的父亲也会被经过。即:

 
 
 
 
 
 
 
 
for(each v∈son[u]) do
if(vis[v]=true)then vis[u]=true;
 
 

初始化所有目的地的vis都为真。最后再统计一下vis,计算出sum即可。

附上代码:

 
 
 
x
 
 
 
 
#include<iostream>
#include<cstring>
#include<cstdio>
#define maxn 50001
using namespace std;

struct edge{
    int to,dis,next;
    edge(){}
    edge(const int &_to,const int &_dis,const int &_next){
        to=_to,dis=_dis,next=_next;
    }
}e[maxn<<1];
int head[maxn],k;

bool vis[maxn];
int dep[maxn],a[maxn],val[maxn];
int n,m,s;

inline int read(){
    register int x(0),f(1); register char c(getchar());
    while(c<'0'||'9'<c){ if(c=='-') f=-1; c=getchar(); }
    while('0'<=c&&c<='9') x=(x<<1)+(x<<3)+(c^48),c=getchar();
    return x*f;
}
inline void add(const int &u,const int &v,const int &w){
    e[k]=edge(v,w,head[u]);
    head[u]=k++;
}

void dfs(int u,int pre){
    for(register int i=head[u];~i;i=e[i].next){
        int v=e[i].to;
        if(v==pre) continue;
        dep[v]=dep[u]+1;
        dfs(v,u);
        if(vis[v]) vis[u]=true;
    }
}
void dfs2(int u,int pre){
    for(register int i=head[u];~i;i=e[i].next){
        int v=e[i].to;
        if(v==pre) continue;
        dep[v]=dep[u]+e[i].dis;
        dfs2(v,u);
    }
}

int main(){
    memset(head,-1,sizeof head);
    n=read(),s=read();
    for(register int i=1;i<n;i++){
        int u=read(),v=read(),w=read();
        add(u,v,w),add(v,u,w);
    }
    m=read();
    for(register int i=1;i<=m;i++){
        a[i]=read(),vis[a[i]]=true;
    }
     
    dfs(s,0);
    for(register int i=0;i<k;i+=2){
        int u=e[i].to,v=e[i^1].to;
        if(dep[u]>dep[v]) swap(u,v);
        val[v]=e[i].dis;
    }//把边权赋给点权
     
    long long ans=0;
    for(register int i=1;i<=n;i++) if(vis[i]){
        ans+=val[i];
    }
     
    memset(dep,0,sizeof dep);
    dfs2(s,0);
    int maxdep=0;
    for(register int i=1;i<=n;i++) if(vis[i]){
        maxdep=max(maxdep,dep[i]);
    }
     
    printf("%d\n",ans*2-maxdep);
    return 0;
}
 
 

时间复杂度为O(n)



这是离线算法......#滑稽 正片开始

为什么不考虑一下神奇的在线呢?既然是50000的数据,我们就跑个在线给他看。

每读入一个目的地时,我们就可以把它到根节点的路径的vis全部赋成真。先考虑暴力做法——一个一个地往上赋值,时间复杂度为O(n),总共就是O(n^2),肯定会爆.......不如加加速?

试试树剖吧。我们可以用线段树来维护区间内一共要被经过的点的权值和(预处理将边权转化为点权)。怎么维护呢?既然是树链剖分,那么一条链子上的时间戳dfn值都是一串连续的数字吧?而且我们肯定修改时会一条链子一条链子地改。所以我们可以维护一个数组:时间戳前缀和c。类似于普通的前缀和,c[i]=c[i-1]+val[id[i]],其中val表示点权,id为dfn的反函数。如果我要修改dfn从l到r的区间,那么:

 

*t[d].c为我们要维护的点权和,d是当前区间的编号。

*不要忘了打懒标记和上传权值。

最后的答案就是1~tot的权值和(tot为dfn最大值),即t[1].c。

这样做的话,每次操作的复杂度就是O(lognlogn),总共O(nlognlogn),50000的数据是可以跑过的

html { overflow-x: initial !important }
:root { --bg-color: #ffffff; --text-color: #333333; --select-text-bg-color: #B5D6FC; --select-text-font-color: auto; --monospace: "Lucida Console",Consolas,"Courier",monospace }
html { font-size: 14px; background-color: var(--bg-color); color: var(--text-color); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased }
body { margin: 0; padding: 0; height: auto; bottom: 0; top: 0; left: 0; right: 0; font-size: 1rem; line-height: 1.42857; overflow-x: hidden; tab-size: 4 }
iframe { margin: auto }
a.url { word-break: break-all }
a:active, a:hover { outline: 0 }
.in-text-selection, ::selection { text-shadow: none; background: var(--select-text-bg-color); color: var(--select-text-font-color) }
#write { margin: 0 auto; height: auto; width: inherit; word-break: normal; word-wrap: break-word; position: relative; white-space: normal; overflow-x: visible; padding-top: 40px }
#write.first-line-indent p { text-indent: 2em }
#write.first-line-indent li p, #write.first-line-indent p * { text-indent: 0 }
#write.first-line-indent li { margin-left: 2em }
.for-image #write { padding-left: 8px; padding-right: 8px }
body.typora-export { padding-left: 30px; padding-right: 30px }
.typora-export .footnote-line, .typora-export li, .typora-export p { white-space: pre-wrap }
@media screen and (max-width: 500px) { body.typora-export { padding-left: 0; padding-right: 0 } #write { padding-left: 20px; padding-right: 20px } .CodeMirror-sizer { margin-left: 0 !important } .CodeMirror-gutters { display: none !important } }
#write li>figure:first-child { margin-top: -20px }
#write ol, #write ul { position: relative }
img { max-width: 100%; vertical-align: middle }
button, input, select, textarea { color: inherit; font: inherit inherit inherit inherit inherit / inherit inherit }
input[type="checkbox"], input[type="radio"] { line-height: normal; padding: 0 }
*, ::after, ::before { box-sizing: border-box }
#write h1, #write h2, #write h3, #write h4, #write h5, #write h6, #write p, #write pre { width: inherit }
#write h1, #write h2, #write h3, #write h4, #write h5, #write h6, #write p { position: relative }
h1, h2, h3, h4, h5, h6 { break-after: avoid-page; break-inside: avoid; orphans: 2 }
p { orphans: 4 }
h1 { font-size: 2rem }
h2 { font-size: 1.8rem }
h3 { font-size: 1.6rem }
h4 { font-size: 1.4rem }
h5 { font-size: 1.2rem }
h6 { font-size: 1rem }
.md-math-block, .md-rawblock, h1, h2, h3, h4, h5, h6, p { margin-top: 1rem; margin-bottom: 1rem }
.hidden { display: none }
.md-blockmeta { color: rgba(204, 204, 204, 1); font-weight: 700; font-style: italic }
a { cursor: pointer }
sup.md-footnote { padding: 2px 4px; background-color: rgba(238, 238, 238, 0.7); color: rgba(85, 85, 85, 1); border-radius: 4px; cursor: pointer }
sup.md-footnote a, sup.md-footnote a:hover { color: inherit; text-transform: inherit }
#write input[type="checkbox"] { cursor: pointer; width: inherit; height: inherit }
figure { overflow-x: auto; margin: 1.2em 0; max-width: calc(100% + 16px); padding: 0 }
figure>table { margin: 0 !important }
tr { break-inside: avoid; break-after: auto }
thead { display: table-header-group }
table { border-collapse: collapse; border-spacing: 0; width: 100%; overflow: auto; break-inside: auto; text-align: left }
table.md-table td { min-width: 32px }
.CodeMirror-gutters { border-right: 0; background-color: inherit }
.CodeMirror-linenumber { user-select: none }
.CodeMirror { text-align: left }
.CodeMirror-placeholder { opacity: 0.3 }
.CodeMirror pre { padding: 0 4px }
.CodeMirror-lines { padding: 0 }
div.hr:focus { cursor: none }
#write pre { white-space: pre-wrap }
#write.fences-no-line-wrapping pre { white-space: pre }
#write pre.ty-contain-cm { white-space: normal }
.CodeMirror-gutters { margin-right: 4px }
.md-fences { font-size: 0.9rem; display: block; break-inside: avoid; text-align: left; overflow: visible; white-space: pre; position: relative !important }
.md-diagram-panel { width: 100%; margin-top: 10px; text-align: center; padding-top: 0; padding-bottom: 8px; overflow-x: auto }
#write .md-fences.mock-cm { white-space: pre-wrap }
.md-fences.md-fences-with-lineno { padding-left: 0 }
#write.fences-no-line-wrapping .md-fences.mock-cm { white-space: pre; overflow-x: auto }
.md-fences.mock-cm.md-fences-with-lineno { padding-left: 8px }
.CodeMirror-line, twitterwidget { break-inside: avoid }
.footnotes { opacity: 0.8; font-size: 0.9rem; margin-top: 1em; margin-bottom: 1em }
.footnotes+.footnotes { margin-top: 0 }
.md-reset { margin: 0; padding: 0; border: 0; outline: 0; vertical-align: top; background: left top; text-decoration: none; text-shadow: none; float: none; position: static; width: auto; height: auto; white-space: nowrap; cursor: inherit; -webkit-tap-highlight-color: transparent; line-height: normal; font-weight: 400; text-align: left; box-sizing: content-box; direction: ltr }
li div { padding-top: 0 }
blockquote { margin: 1rem 0 }
li .mathjax-block, li p { margin: 0.5rem 0 }
li { margin: 0; position: relative }
blockquote>:last-child { margin-bottom: 0 }
blockquote>:first-child, li>:first-child { margin-top: 0 }
.footnotes-area { color: rgba(136, 136, 136, 1); margin-top: 0.714rem; padding-bottom: 0.143rem; white-space: normal }
#write .footnote-line { white-space: pre-wrap }
@media print { body, html { border: 1px solid rgba(0, 0, 0, 0); height: 99%; break-after: avoid; break-before: avoid } #write { margin-top: 0; padding-top: 0; border-color: rgba(0, 0, 0, 0) !important } .typora-export * { -webkit-print-color-adjust: exact } html.blink-to-pdf { font-size: 13px } .typora-export #write { padding-left: 32px; padding-right: 32px; padding-bottom: 0; break-after: avoid } .typora-export #write::after { height: 0 } @page { margin-top: 20mm margin-right: 0 margin-bottom: 20mm margin-left: 0 } }
.footnote-line { margin-top: 0.714em; font-size: 0.7em }
a img, img a { cursor: pointer }
pre.md-meta-block { font-size: 0.8rem; min-height: 0.8rem; white-space: pre-wrap; background: rgba(204, 204, 204, 1); display: block; overflow-x: hidden }
p>.md-image:only-child:not(.md-img-error) img, p>img:only-child { display: block; margin: auto }
p>.md-image:only-child { display: inline-block; width: 100% }
#write .MathJax_Display { margin: 0.8em 0 0 }
.md-math-block { width: 100% }
.md-math-block:not(:empty)::after { display: none }
[contenteditable="true"]:active, [contenteditable="true"]:focus { outline: 0; box-shadow: none }
.md-task-list-item { position: relative; list-style-type: none }
.task-list-item.md-task-list-item { padding-left: 0 }
.md-task-list-item>input { position: absolute; top: 0; left: 0; margin-left: -1.2em; margin-top: calc(1em - 10px); border: none }
.math { font-size: 1rem }
.md-toc { min-height: 3.58rem; position: relative; font-size: 0.9rem; border-radius: 10px }
.md-toc-content { position: relative; margin-left: 0 }
.md-toc-content::after, .md-toc::after { display: none }
.md-toc-item { display: block; color: rgba(65, 131, 196, 1) }
.md-toc-item a { text-decoration: none }
.md-toc-inner:hover { text-decoration: underline }
.md-toc-inner { display: inline-block; cursor: pointer }
.md-toc-h1 .md-toc-inner { margin-left: 0; font-weight: 700 }
.md-toc-h2 .md-toc-inner { margin-left: 2em }
.md-toc-h3 .md-toc-inner { margin-left: 4em }
.md-toc-h4 .md-toc-inner { margin-left: 6em }
.md-toc-h5 .md-toc-inner { margin-left: 8em }
.md-toc-h6 .md-toc-inner { margin-left: 10em }
@media screen and (max-width: 48em) { .md-toc-h3 .md-toc-inner { margin-left: 3.5em } .md-toc-h4 .md-toc-inner { margin-left: 5em } .md-toc-h5 .md-toc-inner { margin-left: 6.5em } .md-toc-h6 .md-toc-inner { margin-left: 8em } }
a.md-toc-inner { font-size: inherit; font-style: inherit; font-weight: inherit; line-height: inherit }
.footnote-line a:not(.reversefootnote) { color: inherit }
.md-attr { display: none }
.md-fn-count::after { content: "." }
code, pre, samp, tt { font-family: var(--monospace) }
kbd { margin: 0 0.1em; padding: 0.1em 0.6em; font-size: 0.8em; color: rgba(36, 39, 41, 1); background: rgba(255, 255, 255, 1); border: 1px solid rgba(173, 179, 185, 1); border-radius: 3px; box-shadow: 0 1px rgba(12, 13, 14, 0.2), inset 0 0 2px rgba(255, 255, 255, 1); white-space: nowrap; vertical-align: middle }
.md-comment { color: rgba(162, 127, 3, 1); opacity: 0.8; font-family: var(--monospace) }
code { text-align: left; vertical-align: initial }
a.md-print-anchor { white-space: pre !important; border-style: none !important; display: inline-block !important; position: absolute !important; width: 1px !important; right: 0 !important; outline: 0 !important; background: left top !important; text-shadow: initial !important }
.md-inline-math .MathJax_SVG .noError { display: none !important }
.html-for-mac .inline-math-svg .MathJax_SVG { vertical-align: 0.2px }
.md-math-block .MathJax_SVG_Display { text-align: center; margin: 0; position: relative; text-indent: 0; max-width: none; max-height: none; min-height: 0; min-width: 100%; width: auto; overflow-y: hidden; display: block !important }
.MathJax_SVG_Display, .md-inline-math .MathJax_SVG_Display { width: auto; display: inline-block !important }
.MathJax_SVG .MJX-monospace { font-family: var(--monospace) }
.MathJax_SVG .MJX-sans-serif { font-family: sans-serif }
.MathJax_SVG { display: inline; font-style: normal; font-weight: 400; line-height: normal; zoom: 90%; text-indent: 0; text-align: left; text-transform: none; letter-spacing: normal; word-spacing: normal; word-wrap: normal; white-space: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0; min-height: 0; border: 0; padding: 0; margin: 0 }
.MathJax_SVG * { }
.MathJax_SVG_Display svg { vertical-align: middle !important; margin-bottom: 0 !important }
.os-windows.monocolor-emoji .md-emoji { font-family: "Segoe UI Symbol", sans-serif }
.md-diagram-panel>svg { max-width: 100% }
[lang="mermaid"] svg, [lang="flow"] svg { max-width: 100% }
[lang="mermaid"] .node text { font-size: 1rem }
table tr th { border-bottom: 0 }
video { max-width: 100%; display: block; margin: 0 auto }
iframe { max-width: 100%; width: 100%; border: none }
.highlight td, .highlight tr { border: 0 }
.CodeMirror { height: auto }
.CodeMirror.cm-s-inner { }
.CodeMirror-scroll { overflow-y: hidden; overflow-x: auto; z-index: 3 }
.CodeMirror-gutter-filler, .CodeMirror-scrollbar-filler { background-color: rgba(255, 255, 255, 1) }
.CodeMirror-gutters { border-right: 1px solid rgba(221, 221, 221, 1); white-space: nowrap }
.CodeMirror-linenumber { padding: 0 3px 0 5px; text-align: right; color: rgba(153, 153, 153, 1) }
.cm-s-inner .cm-keyword { color: rgba(119, 0, 136, 1) }
.cm-s-inner .cm-atom, .cm-s-inner.cm-atom { color: rgba(34, 17, 153, 1) }
.cm-s-inner .cm-number { color: rgba(17, 102, 68, 1) }
.cm-s-inner .cm-def { color: rgba(0, 0, 255, 1) }
.cm-s-inner .cm-variable { color: rgba(0, 0, 0, 1) }
.cm-s-inner .cm-variable-2 { color: rgba(0, 85, 170, 1) }
.cm-s-inner .cm-variable-3 { color: rgba(0, 136, 85, 1) }
.cm-s-inner .cm-string { color: rgba(170, 17, 17, 1) }
.cm-s-inner .cm-property { color: rgba(0, 0, 0, 1) }
.cm-s-inner .cm-operator { color: rgba(152, 26, 26, 1) }
.cm-s-inner .cm-comment, .cm-s-inner.cm-comment { color: rgba(170, 85, 0, 1) }
.cm-s-inner .cm-string-2 { color: rgba(255, 85, 0, 1) }
.cm-s-inner .cm-meta { color: rgba(85, 85, 85, 1) }
.cm-s-inner .cm-qualifier { color: rgba(85, 85, 85, 1) }
.cm-s-inner .cm-builtin { color: rgba(51, 0, 170, 1) }
.cm-s-inner .cm-bracket { color: rgba(153, 153, 119, 1) }
.cm-s-inner .cm-tag { color: rgba(17, 119, 0, 1) }
.cm-s-inner .cm-attribute { color: rgba(0, 0, 204, 1) }
.cm-s-inner .cm-header, .cm-s-inner.cm-header { color: rgba(0, 0, 255, 1) }
.cm-s-inner .cm-quote, .cm-s-inner.cm-quote { color: rgba(0, 153, 0, 1) }
.cm-s-inner .cm-hr, .cm-s-inner.cm-hr { color: rgba(153, 153, 153, 1) }
.cm-s-inner .cm-link, .cm-s-inner.cm-link { color: rgba(0, 0, 204, 1) }
.cm-negative { color: rgba(221, 68, 68, 1) }
.cm-positive { color: rgba(34, 153, 34, 1) }
.cm-header, .cm-strong { font-weight: 700 }
.cm-del { text-decoration: line-through }
.cm-em { font-style: italic }
.cm-link { text-decoration: underline }
.cm-error { color: rgba(255, 0, 0, 1) }
.cm-invalidchar { color: rgba(255, 0, 0, 1) }
.cm-constant { color: rgba(38, 139, 210, 1) }
.cm-defined { color: rgba(181, 137, 0, 1) }
div.CodeMirror span.CodeMirror-matchingbracket { color: rgba(0, 255, 0, 1) }
div.CodeMirror span.CodeMirror-nonmatchingbracket { color: rgba(255, 34, 34, 1) }
.cm-s-inner .CodeMirror-activeline-background { }
.CodeMirror { position: relative; overflow: hidden }
.CodeMirror-scroll { height: 100%; outline: 0; position: relative; box-sizing: content-box }
.CodeMirror-sizer { position: relative }
.CodeMirror-gutter-filler, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-vscrollbar { position: absolute; z-index: 6; display: none }
.CodeMirror-vscrollbar { right: 0; top: 0; overflow: hidden }
.CodeMirror-hscrollbar { bottom: 0; left: 0; overflow: hidden }
.CodeMirror-scrollbar-filler { right: 0; bottom: 0 }
.CodeMirror-gutter-filler { left: 0; bottom: 0 }
.CodeMirror-gutters { position: absolute; left: 0; top: 0; padding-bottom: 30px; z-index: 3 }
.CodeMirror-gutter { white-space: normal; height: 100%; box-sizing: content-box; padding-bottom: 30px; margin-bottom: -32px; display: inline-block }
.CodeMirror-gutter-wrapper { position: absolute; z-index: 4; background: left top !important; border: none !important }
.CodeMirror-gutter-background { position: absolute; top: 0; bottom: 0; z-index: 4 }
.CodeMirror-gutter-elt { position: absolute; cursor: default; z-index: 4 }
.CodeMirror-lines { cursor: text }
.CodeMirror pre { border-radius: 0; border-width: 0; background: left top; font-family: inherit; font-size: inherit; margin: 0; white-space: pre; word-wrap: normal; color: inherit; z-index: 2; position: relative; overflow: visible }
.CodeMirror-wrap pre { word-wrap: break-word; white-space: pre-wrap; word-break: normal }
.CodeMirror-code pre { border-right: 30px solid rgba(0, 0, 0, 0) }
.CodeMirror-wrap .CodeMirror-code pre { border-right: none; width: auto }
.CodeMirror-linebackground { position: absolute; left: 0; right: 0; top: 0; bottom: 0; z-index: 0 }
.CodeMirror-linewidget { position: relative; z-index: 2; overflow: auto }
.CodeMirror-wrap .CodeMirror-scroll { overflow-x: hidden }
.CodeMirror-measure { position: absolute; width: 100%; height: 0; overflow: hidden; visibility: hidden }
.CodeMirror-measure pre { position: static }
.CodeMirror div.CodeMirror-cursor { position: absolute; visibility: hidden; border-right: none; width: 0 }
.CodeMirror div.CodeMirror-cursor { visibility: hidden }
.CodeMirror-focused div.CodeMirror-cursor { visibility: inherit }
.cm-searching { background: rgba(255, 255, 0, 0.4) }
@media print { .CodeMirror div.CodeMirror-cursor { visibility: hidden } }
.cm-s-inner .cm-variable, .cm-s-inner .cm-operator, .cm-s-inner .cm-property { color: rgba(184, 191, 198, 1) }
.cm-s-inner .cm-keyword { color: rgba(200, 143, 208, 1) }
.cm-s-inner .cm-tag { color: rgba(125, 244, 106, 1) }
.cm-s-inner .cm-attribute { color: rgba(117, 117, 228, 1) }
.CodeMirror div.CodeMirror-cursor { border-left: 1px solid rgba(184, 191, 198, 1); z-index: 3 }
.cm-s-inner .cm-string { color: rgba(210, 107, 107, 1) }
.cm-s-inner .cm-comment, .cm-s-inner.cm-comment { color: rgba(218, 146, 74, 1) }
.cm-s-inner .cm-header, .cm-s-inner .cm-def, .cm-s-inner.cm-header, .cm-s-inner.cm-def { color: rgba(141, 141, 240, 1) }
.cm-s-inner .cm-quote, .cm-s-inner.cm-quote { color: rgba(87, 172, 87, 1) }
.cm-s-inner .cm-hr { color: rgba(216, 213, 213, 1) }
.cm-s-inner .cm-link { color: rgba(211, 211, 239, 1) }
.cm-s-inner .cm-negative { color: rgba(217, 80, 80, 1) }
.cm-s-inner .cm-positive { color: rgba(80, 230, 80, 1) }
.cm-s-inner .cm-string-2 { color: rgba(255, 85, 0, 1) }
.cm-s-inner .cm-meta, .cm-s-inner .cm-qualifier { color: rgba(183, 179, 179, 1) }
.cm-s-inner .cm-builtin { color: rgba(243, 179, 248, 1) }
.cm-s-inner .cm-bracket { color: rgba(153, 153, 119, 1) }
.cm-s-inner .cm-atom, .cm-s-inner.cm-atom { color: rgba(132, 182, 203, 1) }
.cm-s-inner .cm-number { color: rgba(100, 171, 143, 1) }
.cm-s-inner .cm-variable { color: rgba(184, 191, 198, 1) }
.cm-s-inner .cm-variable-2 { color: rgba(159, 186, 213, 1) }
.cm-s-inner .cm-variable-3 { color: rgba(28, 198, 133, 1) }
.CodeMirror-selectedtext, .CodeMirror-selected { background: rgba(74, 137, 220, 1); text-shadow: none; color: rgba(255, 255, 255, 1) !important }
.CodeMirror-gutters { border-right: none }
:root { --bg-color: #363B40; --side-bar-bg-color: #2E3033; --text-color: #b8bfc6; --select-text-bg-color: #4a89dc; --control-text-color: #b7b7b7; --control-text-hover-color: #eee; --window-border: 1px solid #555; --active-file-bg-color: rgb(34, 34, 34); --active-file-border-color: #8d8df0; --active-file-text-color: white; --item-hover-bg-color: #70717d; --item-hover-text-color: white; --primary-color: #6dc1e7; --rawblock-edit-panel-bd: #4B535A }
html { font-size: 16px }
html, body { text-size-adjust: 100%; background: var(--bg-color); fill: currentcolor }
#write { max-width: 914px }
html, body, button, input, select, textarea, div.code-tooltip-content { color: rgba(184, 191, 198, 1); border-color: rgba(0, 0, 0, 0) }
div.code-tooltip, .md-hover-tip .md-arrow::after { background: rgba(75, 83, 90, 1) }
.popover.bottom>.arrow::after { border-bottom-color: rgba(75, 83, 90, 1) }
html, body, button, input, select, textarea { font-style: normal; line-height: 1.625rem; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif }
hr { height: 2px; border: 0; margin: 24px 0 !important }
h1, h2, h3, h4, h5, h6 { font-family: "Lucida Grande", Corbel, sans-serif; font-weight: normal; clear: both; word-wrap: break-word; margin: 0; padding: 0; color: rgba(222, 222, 222, 1) }
h1 { font-size: 2.5rem; line-height: 2.75rem; margin-bottom: 1.5rem; letter-spacing: -1.5px }
h2 { font-size: 1.63rem; line-height: 1.875rem; margin-bottom: 1.5rem; letter-spacing: -1px; font-weight: bold }
h3 { font-size: 1.17rem; line-height: 1.5rem; margin-bottom: 1.5rem; letter-spacing: -1px; font-weight: bold }
h4 { font-size: 1.12rem; line-height: 1.375rem; margin-bottom: 1.5rem; color: rgba(255, 255, 255, 1) }
h5 { font-size: 0.97rem; line-height: 1.25rem; margin-bottom: 1.5rem; font-weight: bold }
h6 { font-size: 0.93rem; line-height: 1rem; margin-bottom: 0.75rem; color: rgba(255, 255, 255, 1) }
@media (min-width: 980px) { h3.md-focus::before, h4.md-focus::before, h5.md-focus::before, h6.md-focus::before { color: rgba(221, 221, 221, 1); border: 1px solid rgba(221, 221, 221, 1); border-radius: 3px; position: absolute; left: -1.64286rem; top: 0.357143rem; float: left; font-size: 9px; padding-left: 2px; padding-right: 2px; vertical-align: bottom; font-weight: normal; line-height: normal } h3.md-focus::before { content: "h3" } h4.md-focus::before { content: "h4" } h5.md-focus::before { content: "h5"; top: 0 } h6.md-focus::before { content: "h6"; top: 0 } }
a { text-decoration: none; outline: 0 }
a:hover { outline: 0 }
a:focus { outline: 1px dotted }
sup.md-footnote { background-color: rgba(85, 85, 85, 1); color: rgba(221, 221, 221, 1) }
p { word-wrap: break-word }
p, ul, dd, ol, hr, address, pre, table, iframe, .wp-caption, .wp-audio-shortcode, .wp-video-shortcode { margin-top: 0; margin-bottom: 1.5rem }
li>blockquote { margin-bottom: 0 }
audio:not([controls]) { display: none }
[hidden] { display: none }
.in-text-selection, ::selection { background: rgba(74, 137, 220, 1); color: rgba(255, 255, 255, 1); text-shadow: none }
ul, ol { padding: 0 0 0 1.875rem }
ul { list-style: square }
ol { list-style: decimal }
ul ul, ol ol, ul ol, ol ul { margin: 0 }
b, th, dt, strong { font-weight: bold }
i, em, dfn, cite { font-style: italic }
blockquote { margin: 35px 0 1.875rem 1.875rem; border-left: 2px solid rgba(71, 77, 84, 1); padding-left: 30px }
pre, code, kbd, tt, var { background: rgba(0, 0, 0, 0.05); font-size: 0.875rem; font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace }
kbd { padding: 2px 4px; font-size: 90%; color: rgba(255, 255, 255, 1); background-color: rgba(51, 51, 51, 1); border-radius: 3px; box-shadow: inset 0 -1px rgba(0, 0, 0, 0.25) }
pre.md-fences { padding: 10px 30px; margin-bottom: 20px; border: 1px solid }
.md-fences .code-tooltip { bottom: -3.2em }
.enable-diagrams pre.md-fences[lang="sequence"] .code-tooltip, .enable-diagrams pre.md-fences[lang="flow"] .code-tooltip, .enable-diagrams pre.md-fences[lang="mermaid"] .code-tooltip { bottom: -2.2em; right: 4px }
code, kbd, tt, var { padding: 2px 5px }
table { max-width: 100%; width: 100%; border-collapse: collapse; border-spacing: 0 }
th, td { padding: 5px 10px; vertical-align: top }
a { transition: all 0.2s ease-in-out }
hr { background: rgba(71, 77, 84, 1) }
h1 { margin-top: 2em }
a { color: rgba(224, 224, 224, 1); text-decoration: underline }
a:hover { color: rgba(255, 255, 255, 1) }
.md-inline-math script { color: rgba(129, 177, 219, 1) }
b, th, dt, strong { color: rgba(222, 222, 222, 1) }
mark { background: rgba(211, 212, 14, 1) }
blockquote { color: rgba(157, 162, 166, 1) }
table a { color: rgba(222, 222, 222, 1) }
th, td { border: 1px solid rgba(71, 77, 84, 1) }
.task-list { padding-left: 0 }
.md-task-list-item { padding-left: 1.25rem }
.md-task-list-item>input { top: auto }
.md-task-list-item>input::before { content: ""; display: inline-block; width: 0.875rem; height: 0.875rem; vertical-align: middle; text-align: center; border: 1px solid rgba(184, 191, 198, 1); background-color: rgba(54, 59, 64, 1); margin-top: -0.4rem }
.md-task-list-item>input:checked::before, .md-task-list-item>input[checked]::before { content: "√"; font-size: 0.625rem; line-height: 0.625rem; color: rgba(222, 222, 222, 1) }
.CodeMirror-gutters { background: var(--bg-color); border-right: 1px solid rgba(0, 0, 0, 0) }
.auto-suggest-container { border: 0; background-color: rgba(82, 92, 101, 1) }
#typora-quick-open { background-color: rgba(82, 92, 101, 1) }
#typora-quick-open input { background-color: rgba(82, 92, 101, 1); border-top: 0; border-right: 0; border-bottom: 1px solid rgba(128, 128, 128, 1); border-left: 0 }
.typora-quick-open-item { background-color: inherit; color: inherit }
.typora-quick-open-item.active, .typora-quick-open-item:hover { background-color: rgba(77, 139, 219, 1); color: rgba(255, 255, 255, 1) }
.typora-quick-open-item:hover { background-color: rgba(77, 139, 219, 0.8) }
.typora-search-spinner>div { background-color: rgba(255, 255, 255, 1) }
#write pre.md-meta-block { border-bottom: 1px dashed rgba(204, 204, 204, 1); background: rgba(0, 0, 0, 0); padding-bottom: 0.6em; line-height: 1.6em }
.btn, .btn .btn-default { background: rgba(0, 0, 0, 0); color: rgba(184, 191, 198, 1) }
.ty-table-edit { border-top: 1px solid rgba(128, 128, 128, 1); background-color: rgba(54, 59, 64, 1) }
.popover-title { background: rgba(0, 0, 0, 0) }
.md-image>.md-meta { color: rgba(187, 187, 187, 1); background: rgba(0, 0, 0, 0) }
.md-expand.md-image>.md-meta { color: rgba(221, 221, 221, 1) }
#write>h3::before, #write>h4::before, #write>h5::before, #write>h6::before { border: none; border-radius: 0; color: rgba(136, 136, 136, 1); text-decoration: underline; left: -1.4rem; top: 0.2rem }
#write>h3.md-focus::before { top: 2px }
#write>h4.md-focus::before { top: 2px }
.md-toc-item { color: rgba(168, 194, 220, 1) }
#write div.md-toc-tooltip { background-color: rgba(54, 59, 64, 1) }
.dropdown-menu .btn:hover, .dropdown-menu .btn:focus, .md-toc .btn:hover, .md-toc .btn:focus { color: rgba(255, 255, 255, 1); background: rgba(0, 0, 0, 1) }
#toc-dropmenu { background: rgba(50, 54, 59, 0.93); border: 1px solid rgba(253, 253, 253, 0.15) }
#toc-dropmenu .divider { background-color: rgba(155, 155, 155, 1) }
.outline-expander::before { top: 2px }
#typora-sidebar { box-shadow: none; border-right: none }
.sidebar-tabs { border-bottom: 0 }
#typora-sidebar:hover .outline-title-wrapper { border-left: 1px dashed }
.outline-title-wrapper .btn { color: inherit }
.outline-item:hover { border-color: rgba(54, 59, 64, 1); background-color: rgba(54, 59, 64, 1); color: rgba(255, 255, 255, 1) }
h1.md-focus .md-attr, h2.md-focus .md-attr, h3.md-focus .md-attr, h4.md-focus .md-attr, h5.md-focus .md-attr, h6.md-focus .md-attr, .md-header-span .md-attr { color: rgba(140, 142, 146, 1); display: inline }
.md-comment { color: rgba(90, 149, 227, 1); opacity: 1 }
.md-inline-math g, .md-inline-math svg { stroke: rgba(184, 191, 198, 1) !important; fill: rgb(184, 191, 198) !important }
[md-inline="inline_math"] { color: rgba(156, 178, 233, 1) }
#math-inline-preview .md-arrow::after { background: rgba(0, 0, 0, 1) }
.modal-content { background: var(--bg-color); border: 0 }
.modal-title { font-size: 1.5em }
.modal-content input { background-color: rgba(26, 21, 21, 0.51); color: rgba(255, 255, 255, 1) }
.modal-content .input-group-addon { background-color: rgba(0, 0, 0, 0.17); color: rgba(255, 255, 255, 1) }
.modal-backdrop { background-color: rgba(174, 174, 174, 0.7) }
.modal-content .btn-primary { border-color: var(--primary-color) }
.md-table-resize-popover { background-color: rgba(75, 83, 90, 1) }
.form-inline .input-group .input-group-addon { color: rgba(255, 255, 255, 1) }
#md-searchpanel { border-bottom: 1px dashed rgba(128, 128, 128, 1) }
.context-menu, #spell-check-panel, #footer-word-count-info { background-color: rgba(66, 70, 74, 1) }
.context-menu.dropdown-menu .divider, .dropdown-menu .divider { background-color: rgba(119, 119, 119, 1) }
footer { color: inherit }
@media (max-width: 1000px) { footer { border-top: none } footer:hover { color: inherit } }
#file-info-file-path .file-info-field-value:hover { background-color: rgba(85, 85, 85, 1); color: rgba(222, 222, 222, 1) }
.megamenu-content, .megamenu-opened header { background: var(--bg-color) }
.megamenu-menu-panel h2, .megamenu-menu-panel h1, .long-btn { color: inherit }
.megamenu-menu-panel input[type="text"] { border-width: 0 0 1px; border-style: initial initial solid }
#recent-file-panel-action-btn { border: 1px solid rgba(128, 128, 128, 1) }
.megamenu-menu-panel .dropdown-menu>li>a { color: inherit; background-color: rgba(47, 53, 58, 1); text-decoration: none }
.megamenu-menu-panel table td:nth-child(0n+1) { color: inherit; font-weight: bold }
.megamenu-menu-panel tbody tr:hover td:nth-child(0n+1) { color: rgba(255, 255, 255, 1) }
.modal-footer .btn-default, .modal-footer .btn-primary, .modal-footer .btn-default:not(:hover) { border: 1px solid rgba(0, 0, 0, 0) }
.btn-default:hover, .btn-default:focus, .btn-default.focus, .btn-default:active, .btn-default.active, .open>.dropdown-toggle.btn-default { color: rgba(255, 255, 255, 1); border: 1px solid rgba(221, 221, 221, 1); background-color: inherit }
.modal-header { border-bottom: 0 }
.modal-footer { border-top: 0 }
#recent-file-panel tbody tr:nth-child(2n-1) { background-color: rgba(0, 0, 0, 0) !important }
.megamenu-menu-panel tbody tr:hover td:nth-child(0n+2) { color: inherit }
.megamenu-menu-panel .btn { border: 1px solid rgba(238, 238, 238, 1); background: rgba(0, 0, 0, 0) }
.mouse-hover .toolbar-icon.btn:hover, #w-full.mouse-hover, #w-pin.mouse-hover { background-color: inherit }
{ width: 5px }
{ background: rgba(250, 250, 250, 0.3) }
{ background: rgba(250, 250, 250, 0.5) }
#w-unpin { background-color: rgba(65, 130, 196, 1) }
#top-titlebar, #top-titlebar * { color: var(--item-hover-text-color) }
.typora-sourceview-on #toggle-sourceview-btn, #footer-word-count:hover, .ty-show-word-count #footer-word-count { background: rgba(51, 51, 51, 1) }
#toggle-sourceview-btn:hover { color: rgba(238, 238, 238, 1); background: rgba(51, 51, 51, 1) }
.on-focus-mode .md-end-block:not(.md-focus):not(.md-focus-container) * { color: rgba(104, 104, 104, 1) !important }
.on-focus-mode .md-end-block:not(.md-focus) img, .on-focus-mode .md-task-list-item:not(.md-focus-container)>input { }
.on-focus-mode li[cid]:not(.md-focus-container) { color: rgba(104, 104, 104, 1) }
.on-focus-mode .md-fences.md-focus .CodeMirror-code>:not(.CodeMirror-activeline) *, .on-focus-mode .CodeMirror.cm-s-inner:not(.CodeMirror-focused) * { color: rgba(104, 104, 104, 1) !important }
.on-focus-mode .md-focus, .on-focus-mode .md-focus-container { color: rgba(255, 255, 255, 1) }
.on-focus-mode #typora-source .CodeMirror-code>:not(.CodeMirror-activeline) * { color: rgba(104, 104, 104, 1) !important }
#write .md-focus .md-diagram-panel { border: 1px solid rgba(221, 221, 221, 1); margin-left: -1px; width: calc(100% + 2px) }
#write .md-focus.md-fences-with-lineno .md-diagram-panel { margin-left: auto }
.md-diagram-panel-error { color: rgba(241, 144, 142, 1) }
.active-tab-files #info-panel-tab-file, .active-tab-files #info-panel-tab-file:hover, .active-tab-outline #info-panel-tab-outline, .active-tab-outline #info-panel-tab-outline:hover { color: rgba(238, 238, 238, 1) }
.sidebar-footer-item:hover, .footer-item:hover { color: rgba(255, 255, 255, 1) }
.ty-side-sort-btn.active, .ty-side-sort-btn:hover, .selected-folder-menu-item a::after { color: rgba(255, 255, 255, 1) }
#sidebar-files-menu { border: 1px solid; box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.79); background-color: var(--bg-color) }
.file-list-item { border-bottom: none }
.file-list-item-summary { opacity: 1 }
.file-list-item.active:first-child { border-top: none }
.file-node-background { height: 32px }
.file-library-node.active>.file-node-content, .file-list-item.active { color: var(--active-file-text-color) }
.file-library-node.active>.file-node-background { background-color: var(--active-file-bg-color) }
.file-list-item.active { background-color: var(--active-file-bg-color) }
#ty-tooltip { background-color: rgba(0, 0, 0, 1); color: rgba(238, 238, 238, 1) }
.md-task-list-item>input { margin-left: -1.3em; margin-top: 0.3rem; -webkit-appearance: none }
.md-mathjax-midline { background-color: rgba(87, 97, 107, 1); border-bottom: none }
footer.ty-footer { border-color: rgba(101, 101, 101, 1) }
.typora-export li, .typora-export p, .typora-export, .footnote-line { white-space: normal }

[Ceoi2004]Journey的更多相关文章

  1. CF721C. Journey[DP DAG]

    C. Journey time limit per test 3 seconds memory limit per test 256 megabytes input standard input ou ...

  2. POJ2488A Knight's Journey[DFS]

    A Knight's Journey Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 41936   Accepted: 14 ...

  3. CF #374 (Div. 2) C. Journey dp

    1.CF #374 (Div. 2)    C.  Journey 2.总结:好题,这一道题,WA,MLE,TLE,RE,各种姿势都来了一遍.. 3.题意:有向无环图,找出第1个点到第n个点的一条路径 ...

  4. POJ2488-A Knight's Journey(DFS+回溯)

    题目链接:http://poj.org/problem?id=2488 A Knight's Journey Time Limit: 1000MS   Memory Limit: 65536K Tot ...

  5. codeforces 721C C. Journey(dp)

    题目链接: C. Journey time limit per test 3 seconds memory limit per test 256 megabytes input standard in ...

  6. A Knight's Journey 分类: POJ 搜索 2015-08-08 07:32 2人阅读 评论(0) 收藏

    A Knight's Journey Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 35564 Accepted: 12119 ...

  7. HDOJ-三部曲一(搜索、数学)- A Knight's Journey

    A Knight's Journey Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 131072/65536K (Java/Other) ...

  8. 【推公式】UVa 10995 - Educational Journey

    1A~,但后来看人家的代码好像又写臭了,T^T... Problem A: Educational journey The University of Calgary team qualified f ...

  9. poj 3544 Journey with Pigs

    Journey with Pigs Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3004   Accepted: 922 ...

随机推荐

  1. 1款开源工具,实现自动化升级K3S集群!

    即便你的集群能够平稳运行,Kubernetes升级依旧是一项艰难的任务.由于每3个月Kubernetes会发布一个新版本,所以升级是十分必要的.如果一年内你不升级你的Kubernetes集群,你就会落 ...

  2. Python之selenium创建多个标签页

    最近在做一个项目,需要用到cookies登录,想法是,在同一个浏览器下,打开两个标签页进行.让其自动获取cookies,先记录,不行的话,到时候再手动加载cookies. 1 ''' 2 #selen ...

  3. 【程序包管理】本地yum仓库的创建

    一.yum优势 yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器. 基於RPM包管理,能够从指定的服务器 ...

  4. 【命令】ln命令

    这是linux中一个非常重要命令,请大家一定要熟悉.它的功能是为某一个文件或目录在另外一个位置建立一个同步的链接,默认是链接是硬链接,常用参数是 "-s"  . 对于ln命令,这里 ...

  5. Python代码打包成exe可执行程序

    首先,打包成exe可执行程序是针对windows平台来说的. 目前比较主流的打包工具就是pyinstaller. 参考:Using PyInstaller 首先安装pyinstaller: pip i ...

  6. 使用 CoreDNS 来应对 DNS 污染

    原文链接:https://fuckcloudnative.io/posts/install-coredns-on-macos/ CoreDNS 是 Golang 编写的一个插件式 DNS 服务器,是 ...

  7. Android驱动入门-在Android系统上运行JAVA程序

    在linux上运行java程序,直接用javac编译,再用java运行就行了.但是在Android上,由于虚拟机和pc端的不同,所以操作方法也是不一样的. 如果想在Android上运行Hello wo ...

  8. Layui关闭弹出层对话框--刷新父界面

    在毕设的开发中,添加用户.添加权限等等一些地方需要类似于bootstrap中的模态框.然而开发用的却是layui 在layui中有弹出层可以实现其中的效果. 但是,一般用的时候都是提交后关闭窗口,刷新 ...

  9. 记一次由于引用第三方服务导致的GC overhead limit exceeded异常

    最近笔者遇到一个问题  监控平台忽然告警 GC overhead limit exceeded 这个异常 第一反应估计是堆溢出了.于是各种各种jmap  jstack下载堆栈文件和堆日志文件. 以下是 ...

  10. docker容器中布置静态网站

    docker容器中布置静态网站(基于云服务器ubuntu系统) 服务器准备(ubuntu) docker nginx 静态网页制作 浏览器测试 服务器布置 这里推荐使用云服务器(阿里云.华为云.腾讯云 ...