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

asp.net 网站 方案大型小说网站开发语言

asp.net 网站 方案,大型小说网站开发语言,发文章用哪个平台比较好,怎样把自己的网站做推广赛时只出了两题 09 10 06卡死了。很烂#xff0c;没有及时弃疗06#xff0c;最后得不偿失 丢人。 1001 Different Circle Permutation#xff08;矩快polya欧拉函数#xff09; 题目大意#xff1a;n个座位围成一圈#xff0c;n个人中挑出若干个人坐下#xff0c;要求… 赛时只出了两题 09 10  06卡死了。很烂没有及时弃疗06最后得不偿失  丢人。 1001 Different Circle Permutation矩快polya欧拉函数 题目大意n个座位围成一圈n个人中挑出若干个人坐下要求相邻座椅不可同时有人。n个座位均匀分布即相邻座位与圆心夹角为2πN。问共有多少种方案旋转相同算一种。 问题可转化为环上n个点涂色黑白两色要求相邻点不可同时为黑。 若不考虑相邻不可同为黑就是经典的染色问题旋转相同为同构对称相同不算同构。 polya定理可解为1/|G|*(mC(π1)mC(π2)mC(π3)…mC(πk)). 由于n很大所以用欧拉函数求gcd。 即 f(n)1n∑ni12ngcd(i,n)1n∑d|n2nφ(nd)d 此上是考虑黑白随意涂色。 题目限制黑色不可相邻。其实对于给定的nf(n) f(n-1)f(n-2)  设黑色为1白色为0  考虑新加点为0 f(n-1)合法则新加点两边状态为 00 01 10  可组成 (0 0 0) (0 0 1) (1 0 0)  对于f(n-2) n的基础上扣去两个点两边状态为 00 01 10  则可组成 (0 10 0) (0 10 1) (1 01 0) 至此对于n个点的所有情况都考虑到了。 这样带入之前公式。即为  f(n)1n∑ni1f(gcd(i,n))1n∑d|nφ(nd)f(d) 枚举n的因子在线求欧拉函数乘上矩快求出的方案数即可。 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;10000/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span;LL Pow_m(LL a,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span b) {LL ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(b){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(bspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) ans (ans*a)%mod;b span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;a (a*a)%mod;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans; }LL eular(LL n) {LL ans n;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span; i*i n; i){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(n%i) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;continue/span;ans - ans/i;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(n%i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span) n / i;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(n span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) ans - ans/n;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans; }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Matrix {LL ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span init(){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(ans,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(ans));ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span] ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span] ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span] ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span] span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span init(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span pos){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(ans,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(ans));span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; i) ans[i][i] span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;}Matrix span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;operator/span *(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Matrix a)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span{Matrix tmp;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(tmp.ans,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(tmp.ans));span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; i)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span j span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; j span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; j)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span k span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; k span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; k)tmp.ans[i][j] (tmp.ans[i][j]ans[i][k]*a.ans[k][j]%mod)%mod;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span tmp;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span prt(){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; i){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span j span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; j span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; j){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%lld /span,ans[i][j]);}span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;puts/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;/span);}} };Matrix ans,a;LL f(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span b) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(b span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(b span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span;b - span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span;ans.init(span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);a.init();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(b){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(bspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) ans ans*a;b span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;a a*a;}span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//ans.prt();/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span (span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;4/span*ans.ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span]span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span*ans.ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span]ans.ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span])%mod; }LL solve(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span n) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(n span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span;LL ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;LL d;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(d span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; d*d n; d){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(n%d) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;continue/span;ans (anseular(d)*f(n/d)%modeular(n/d)*f(d)%mod)%mod;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(d*d n) ans (anseular(d)*f(d)%mod)%mod;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans*Pow_m(n,mod-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span)%mod; }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//fread();/spanspan classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//fwrite();/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span n;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(~span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,n)){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%lld\n/span,solve(n));}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; } /codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/lili stylebox-sizing: border-box; padding: 0px 5px;141/lili stylebox-sizing: border-box; padding: 0px 5px;142/lili stylebox-sizing: border-box; padding: 0px 5px;143/lili stylebox-sizing: border-box; padding: 0px 5px;144/lili stylebox-sizing: border-box; padding: 0px 5px;145/lili stylebox-sizing: border-box; padding: 0px 5px;146/lili stylebox-sizing: border-box; padding: 0px 5px;147/lili stylebox-sizing: border-box; padding: 0px 5px;148/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/lili stylebox-sizing: border-box; padding: 0px 5px;141/lili stylebox-sizing: border-box; padding: 0px 5px;142/lili stylebox-sizing: border-box; padding: 0px 5px;143/lili stylebox-sizing: border-box; padding: 0px 5px;144/lili stylebox-sizing: border-box; padding: 0px 5px;145/lili stylebox-sizing: border-box; padding: 0px 5px;146/lili stylebox-sizing: border-box; padding: 0px 5px;147/lili stylebox-sizing: border-box; padding: 0px 5px;148/li/ul 1002 Different GCD Subarray Query离线树状数组 题目大意n个数q次查询每次查询[l,r]中不同的区间gcd个数。 fzu一场月赛里有解法一样。当时还写了题解、GG 看到其他巨巨有用两个vector搞的。考虑gcd的单调性所以vector里类似一个单调栈然后就保证了无重之类的。很赞。 我照着敲了无限RE……后来改成一种map的写法。还是RE……再后来自己跑数据测出sort挂了……cmp函数会挂即没事…… 然后vector写法WA了……map写法A了……说说我的map思路吧vector思路网上挺多了。感觉map比较好明白不过就是时间可能差一点。 考虑把询问预存下来按右边界排序然后遍历右边界过程中求出每个左边界到当前右边界的gcd种数这样当前右边界的询问中每个左边界可以求一个答案出来。gcd种数可以用树状数组存。 那么存下每种gcd在当前右边界下最近最靠右的左边界即可。 这就是用到map的地方存储每种gcd的最大的左边界。 这里用到三个map  map1:遍历到当前位置每种gcd的最大左边界  map2:遍历到当前位置i右边界为i-1的gcd的最大左边界  map3:i-1 - i的转移 类似dp的思想转移即可。 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;112345/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span a[msz],n; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span bit[msz]; span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;map/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span mp2; span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;map/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span mp1; span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;map/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span tmp;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Query {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span l,r,id;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;operator/span (span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Query a)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span{span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span r a.r;} };Query que[msz]; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans[msz];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span Lowbit(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span x(-x); }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span Add(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ad) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(x n){bit[x] ad;x Lowbit(x);} }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span Sum(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(x){ans bit[x];x - Lowbit(x);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans; }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//fread(in.in);/spanspan classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//fwrite();/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span q;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(~span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,n,q)){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(bit,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(bit));span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i) span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,a[i]);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i q; i){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,que[i].l,que[i].r);que[i].id i;}sort(que,queq);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span pos span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span g;mp1.clear();mp2.clear();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){tmp.clear();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;auto/span iter: mp2){g __gcd(iter.first,a[i]);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(!tmp.count(g) || tmp[g] iter.second)tmp[g] iter.second;}tmp[a[i]] i;mp2.clear();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;auto/span iter: tmp){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(!mp1.count(iter.first)){mp1[iter.first] iter.second;Add(iter.second,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;else/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(mp1[iter.first] iter.second){Add(mp1[iter.first],-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);mp1[iter.first] iter.second;Add(iter.second,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);}mp2[iter.first] iter.second;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(pos q que[pos].r i){ans[que[pos].id] Sum(que[pos].r)-Sum(que[pos].l-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);pos;}}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i q; i)span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d\n/span,ans[i]);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; }/codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/li/ul 1006 Football GamesLandau’s Theorem 题目大意n支队伍两两比赛赢得2分输不得分平局分别得1分  给出最终得分问是否合法。 Landau’s Theorem的变形赢得1分其余无分即为Landau’s Theorem。 具体证明没明白……判定方式就是从小到大排序。 对于此题如果第i人赢得前面全部的输掉后面全部的最终所有队伍得分就会变成0 2 4 6 8 10这种情况。  那么∃(1≤k≤n)∑ki1s[i]i(i−1)  ∑ni1s[i]n(n−1)则分数无误。 即对于此题 得分最少的i个人的分数总和的下界 为i(i-1) 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;10000/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span maxn span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;233/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span num[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;21234/span];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span judge(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span n) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i n; i){ans num[i];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(ans (ispan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span)*i) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;false/span;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans n*(n-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span); }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span t,n;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(~span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,t)){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(t--){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,n);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i n; i)span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,num[i]);sort(num,numn);span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;puts/span(judge(n)? span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;T/span: span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;F/span);}}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; }/codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/li/ul 1007 Friends and Enemies二分图完美匹配 题目大意  m个人 n种颜色石头。  人与人之间关系要么是朋友要么是敌人关系不具有传递性。  每个人可以携带任何数量任何种颜色的石头也可以不带 对于任何两个人如果是朋友携带的石头至少有一种相同颜色。  如果是朋友携带的石头颜色必须完全不同。 问n种颜色的石头能不能满足所有关系下m个人佩戴的石头都符合要求。 就是找最坏条件下m个人需要的石头种类跟n进行比较。  把m个人分成两组每组内部都是敌人关系两组间两两互为朋友。  这样所需要石头种数就是两组间的连线数并且是最坏情况。 n/2*(n1)/2 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;10000/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span maxn span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;233/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {LL n,m;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(~span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%lld%lld/span,n,m)) span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;puts/span(m (n/span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span)*((nspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span)/span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span)? span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;T/span: span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;F/span);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; }/codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/li/ul 1008 Function优先队列 题目大意  给出n个正整数和q次询问每次询问[l,r] 输出a[l]moda[l1]moda[l2]...moda[r] 已知mod操作类似gcd操作结果是单调的只会小不会大。 把所有询问预存按左边界排序当前左边界存在于询问时加入优先队列对于当前位置优先队列中大于a[i]的都对a[i]取余取到 a[i]即可停止更小的肯定更无变化根据右边界抛出即可 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;typedef/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;long/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;long/span LL; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-9/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span maxn span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;100000/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;100/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Query {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span l,r,x,id;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;operator/span (span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Query a)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span{span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span x a.x;} };span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span a[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;112345/span]; Query que[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;113245/span]; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;112345/span];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span cmp(Query a,Query b) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span a.l b.l; }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span t,n,m;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,t);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(t--){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,n);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i) span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,a[i]);span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,m);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i m; i){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,que[i].l,que[i].r);que[i].id i;que[i].x a[que[i].l];}sort(que,quem,cmp);priority_queue Query,span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;vector/spanQuery/span,greaterQuery q;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span tp span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;Query tmp;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(!q.empty() q.top().x a[i]){tmp q.top();q.pop();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(tmp.r i){ans[tmp.id] tmp.x;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;continue/span;}tmp.x % a[i];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(tmp.r i){ans[tmp.id] tmp.x;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;continue/span;}q.push(tmp);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(tp m que[tp].l i){q.push(que[tp]);tp;}}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(!q.empty()){tmp q.top();q.pop();ans[tmp.id] tmp.x;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i m; i)span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d\n/span,ans[i]);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; }/codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/li/ul 1009 Sparse Graph补图bfs 题目大意  给出一个图和一个起点S(1 S n)  问补图上S到所有点的最短路除S外 原图边很少用set存尚未遍历的点bfs即可 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;10000/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span maxn span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;233/span;span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;set/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span s; span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;set/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span::iterator iter; span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;map/span Pr,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span/span mp; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span n,m; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;212345/span];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span bfs(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span u) {span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;queue/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span q;q.push(u);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(iter s.begin(); iter ! s.end(); iter)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(*iter u){s.erase(iter);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;break/span;}ans[u] span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(!q.empty()){u q.front();span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;// printf(%d\n,u);/spanq.pop();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(iter s.begin(); iter ! s.end(); ){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span v *iter;span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//printf(%d %d\n,u,v);/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(!mp.count(Pr(u,v))){q.push(v);ans[v] ans[u]span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;iter s.erase(iter--);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;else/span iter;}} }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span t,u,v;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,t);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(t--){mp.clear();s.clear();span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,n,m);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i) s.insert(i);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(m--){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,u,v);mp[Pr(u,v)] mp[Pr(v,u)] span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;}span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,u);span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(ans,-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(ans));bfs(u);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span f span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(i u) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;continue/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(f) span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;putchar/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box; /span);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;else/span f span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,ans[i]);}span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;puts/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;/span);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; }/codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/li/ul 1010 Weak Pair树型dp树状数组二分 题目大意n个点的树每个点有一个价值v。  找出满足以下条件的点对。  对于点对(u,v) u为v的祖先valu∗valvk 树型dp过程中每遇到一个点把它加到树状数组里。每离开一个点从树状数组里去掉它。 加val[u]前二分出*val[u] k的最大的val  树状数组里找到当前 该val的点的数量 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;10000/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span maxn span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;112345/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Edge {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span v,next; };Edge eg[maxn]; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span head[maxn]; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span bit[maxn]; LL val[maxn]; LL to[maxn]; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span in[maxn]; LL k,tp,ans; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span id;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span add(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span u,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span v) {eg[tp].v v;eg[tp].next head[u];head[u] tp; }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span Lowbit(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span x(-x); }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span Add(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ad) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(x id){bit[x] ad;x Lowbit(x);} }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span Sum(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(x){ans bit[x];x - Lowbit(x);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans; }span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;map/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span mp;LL Search(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span l,r;l span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span,r id;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans -span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(l r){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mid (lr)span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(to[x]*to[mid] k){ans mid;l midspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;else/span r mid-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(ans -span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span Sum(ans); }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span solve(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span u,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span pre) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span tmp ans;ans Search(mp[val[u]]);span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//printf(%d %lld %lld\n,u,val[u],ans-tmp);/spanAdd(mp[val[u]],span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i head[u]; i ! -span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i eg[i].next){solve(eg[i].v,u);}Add(mp[val[u]],-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span); }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main(){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span n,t,u,v;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,t);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(t--){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%lld/span,n,k);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%lld/span,val[i]);to[i] val[i];}sort(tospan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span,tonspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);id span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;mp.clear();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span || to[i] ! to[i-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span]){id;to[id] to[i];mp[to[id]] id;}}span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(bit,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(bit));span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(head,-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(head));tp span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(in,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(in));span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,u,v);in[v];add(u,v);}ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(!in[i]){solve(i,i);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;break/span;}span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%lld\n/span,ans);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; } /codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/lili stylebox-sizing: border-box; padding: 0px 5px;141/lili stylebox-sizing: border-box; padding: 0px 5px;142/lili stylebox-sizing: border-box; padding: 0px 5px;143/lili stylebox-sizing: border-box; padding: 0px 5px;144/lili stylebox-sizing: border-box; padding: 0px 5px;145/lili stylebox-sizing: border-box; padding: 0px 5px;146/lili stylebox-sizing: border-box; padding: 0px 5px;147/lili stylebox-sizing: border-box; padding: 0px 5px;148/lili stylebox-sizing: border-box; padding: 0px 5px;149/lili stylebox-sizing: border-box; padding: 0px 5px;150/lili stylebox-sizing: border-box; padding: 0px 5px;151/lili stylebox-sizing: border-box; padding: 0px 5px;152/lili stylebox-sizing: border-box; padding: 0px 5px;153/lili stylebox-sizing: border-box; padding: 0px 5px;154/lili stylebox-sizing: border-box; padding: 0px 5px;155/lili stylebox-sizing: border-box; padding: 0px 5px;156/lili stylebox-sizing: border-box; padding: 0px 5px;157/lili stylebox-sizing: border-box; padding: 0px 5px;158/lili stylebox-sizing: border-box; padding: 0px 5px;159/lili stylebox-sizing: border-box; padding: 0px 5px;160/lili stylebox-sizing: border-box; padding: 0px 5px;161/lili stylebox-sizing: border-box; padding: 0px 5px;162/lili stylebox-sizing: border-box; padding: 0px 5px;163/lili stylebox-sizing: border-box; padding: 0px 5px;164/lili stylebox-sizing: border-box; padding: 0px 5px;165/lili stylebox-sizing: border-box; padding: 0px 5px;166/lili stylebox-sizing: border-box; padding: 0px 5px;167/lili stylebox-sizing: border-box; padding: 0px 5px;168/lili stylebox-sizing: border-box; padding: 0px 5px;169/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/lili stylebox-sizing: border-box; padding: 0px 5px;141/lili stylebox-sizing: border-box; padding: 0px 5px;142/lili stylebox-sizing: border-box; padding: 0px 5px;143/lili stylebox-sizing: border-box; padding: 0px 5px;144/lili stylebox-sizing: border-box; padding: 0px 5px;145/lili stylebox-sizing: border-box; padding: 0px 5px;146/lili stylebox-sizing: border-box; padding: 0px 5px;147/lili stylebox-sizing: border-box; padding: 0px 5px;148/lili stylebox-sizing: border-box; padding: 0px 5px;149/lili stylebox-sizing: border-box; padding: 0px 5px;150/lili stylebox-sizing: border-box; padding: 0px 5px;151/lili stylebox-sizing: border-box; padding: 0px 5px;152/lili stylebox-sizing: border-box; padding: 0px 5px;153/lili stylebox-sizing: border-box; padding: 0px 5px;154/lili stylebox-sizing: border-box; padding: 0px 5px;155/lili stylebox-sizing: border-box; padding: 0px 5px;156/lili stylebox-sizing: border-box; padding: 0px 5px;157/lili stylebox-sizing: border-box; padding: 0px 5px;158/lili stylebox-sizing: border-box; padding: 0px 5px;159/lili stylebox-sizing: border-box; padding: 0px 5px;160/lili stylebox-sizing: border-box; padding: 0px 5px;161/lili stylebox-sizing: border-box; padding: 0px 5px;162/lili stylebox-sizing: border-box; padding: 0px 5px;163/lili stylebox-sizing: border-box; padding: 0px 5px;164/lili stylebox-sizing: border-box; padding: 0px 5px;165/lili stylebox-sizing: border-box; padding: 0px 5px;166/lili stylebox-sizing: border-box; padding: 0px 5px;167/lili stylebox-sizing: border-box; padding: 0px 5px;168/lili stylebox-sizing: border-box; padding: 0px 5px;169/li/ul 顶 赛时只出了两题 09 10  06卡死了。很烂没有及时弃疗06最后得不偿失  丢人。 1001 Different Circle Permutation矩快polya欧拉函数 题目大意n个座位围成一圈n个人中挑出若干个人坐下要求相邻座椅不可同时有人。n个座位均匀分布即相邻座位与圆心夹角为2πN。问共有多少种方案旋转相同算一种。 问题可转化为环上n个点涂色黑白两色要求相邻点不可同时为黑。 若不考虑相邻不可同为黑就是经典的染色问题旋转相同为同构对称相同不算同构。 polya定理可解为1/|G|*(mC(π1)mC(π2)mC(π3)…mC(πk)). 由于n很大所以用欧拉函数求gcd。 即 f(n)1n∑ni12ngcd(i,n)1n∑d|n2nφ(nd)d 此上是考虑黑白随意涂色。 题目限制黑色不可相邻。其实对于给定的nf(n) f(n-1)f(n-2)  设黑色为1白色为0  考虑新加点为0 f(n-1)合法则新加点两边状态为 00 01 10  可组成 (0 0 0) (0 0 1) (1 0 0)  对于f(n-2) n的基础上扣去两个点两边状态为 00 01 10  则可组成 (0 10 0) (0 10 1) (1 01 0) 至此对于n个点的所有情况都考虑到了。 这样带入之前公式。即为  f(n)1n∑ni1f(gcd(i,n))1n∑d|nφ(nd)f(d) 枚举n的因子在线求欧拉函数乘上矩快求出的方案数即可。 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;10000/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span;LL Pow_m(LL a,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span b) {LL ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(b){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(bspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) ans (ans*a)%mod;b span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;a (a*a)%mod;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans; }LL eular(LL n) {LL ans n;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span; i*i n; i){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(n%i) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;continue/span;ans - ans/i;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(n%i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span) n / i;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(n span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) ans - ans/n;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans; }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Matrix {LL ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span init(){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(ans,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(ans));ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span] ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span] ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span] ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span] span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span init(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span pos){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(ans,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(ans));span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; i) ans[i][i] span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;}Matrix span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;operator/span *(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Matrix a)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span{Matrix tmp;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(tmp.ans,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(tmp.ans));span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; i)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span j span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; j span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; j)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span k span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; k span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; k)tmp.ans[i][j] (tmp.ans[i][j]ans[i][k]*a.ans[k][j]%mod)%mod;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span tmp;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span prt(){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; i){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span j span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; j span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span; j){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%lld /span,ans[i][j]);}span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;puts/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;/span);}} };Matrix ans,a;LL f(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span b) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(b span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(b span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span;b - span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span;ans.init(span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);a.init();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(b){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(bspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) ans ans*a;b span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;a a*a;}span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//ans.prt();/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span (span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;4/span*ans.ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span]span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;3/span*ans.ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span]ans.ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span][span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span])%mod; }LL solve(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span n) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(n span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span;LL ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;LL d;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(d span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; d*d n; d){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(n%d) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;continue/span;ans (anseular(d)*f(n/d)%modeular(n/d)*f(d)%mod)%mod;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(d*d n) ans (anseular(d)*f(d)%mod)%mod;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans*Pow_m(n,mod-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span)%mod; }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//fread();/spanspan classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//fwrite();/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span n;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(~span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,n)){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%lld\n/span,solve(n));}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; } /codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/lili stylebox-sizing: border-box; padding: 0px 5px;141/lili stylebox-sizing: border-box; padding: 0px 5px;142/lili stylebox-sizing: border-box; padding: 0px 5px;143/lili stylebox-sizing: border-box; padding: 0px 5px;144/lili stylebox-sizing: border-box; padding: 0px 5px;145/lili stylebox-sizing: border-box; padding: 0px 5px;146/lili stylebox-sizing: border-box; padding: 0px 5px;147/lili stylebox-sizing: border-box; padding: 0px 5px;148/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/lili stylebox-sizing: border-box; padding: 0px 5px;141/lili stylebox-sizing: border-box; padding: 0px 5px;142/lili stylebox-sizing: border-box; padding: 0px 5px;143/lili stylebox-sizing: border-box; padding: 0px 5px;144/lili stylebox-sizing: border-box; padding: 0px 5px;145/lili stylebox-sizing: border-box; padding: 0px 5px;146/lili stylebox-sizing: border-box; padding: 0px 5px;147/lili stylebox-sizing: border-box; padding: 0px 5px;148/li/ul 1002 Different GCD Subarray Query离线树状数组 题目大意n个数q次查询每次查询[l,r]中不同的区间gcd个数。 fzu一场月赛里有解法一样。当时还写了题解、GG 看到其他巨巨有用两个vector搞的。考虑gcd的单调性所以vector里类似一个单调栈然后就保证了无重之类的。很赞。 我照着敲了无限RE……后来改成一种map的写法。还是RE……再后来自己跑数据测出sort挂了……cmp函数会挂即没事…… 然后vector写法WA了……map写法A了……说说我的map思路吧vector思路网上挺多了。感觉map比较好明白不过就是时间可能差一点。 考虑把询问预存下来按右边界排序然后遍历右边界过程中求出每个左边界到当前右边界的gcd种数这样当前右边界的询问中每个左边界可以求一个答案出来。gcd种数可以用树状数组存。 那么存下每种gcd在当前右边界下最近最靠右的左边界即可。 这就是用到map的地方存储每种gcd的最大的左边界。 这里用到三个map  map1:遍历到当前位置每种gcd的最大左边界  map2:遍历到当前位置i右边界为i-1的gcd的最大左边界  map3:i-1 - i的转移 类似dp的思想转移即可。 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;112345/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span a[msz],n; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span bit[msz]; span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;map/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span mp2; span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;map/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span mp1; span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;map/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span tmp;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Query {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span l,r,id;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;operator/span (span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Query a)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span{span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span r a.r;} };Query que[msz]; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans[msz];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span Lowbit(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span x(-x); }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span Add(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ad) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(x n){bit[x] ad;x Lowbit(x);} }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span Sum(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(x){ans bit[x];x - Lowbit(x);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans; }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//fread(in.in);/spanspan classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//fwrite();/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span q;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(~span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,n,q)){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(bit,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(bit));span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i) span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,a[i]);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i q; i){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,que[i].l,que[i].r);que[i].id i;}sort(que,queq);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span pos span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span g;mp1.clear();mp2.clear();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){tmp.clear();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;auto/span iter: mp2){g __gcd(iter.first,a[i]);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(!tmp.count(g) || tmp[g] iter.second)tmp[g] iter.second;}tmp[a[i]] i;mp2.clear();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;auto/span iter: tmp){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(!mp1.count(iter.first)){mp1[iter.first] iter.second;Add(iter.second,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;else/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(mp1[iter.first] iter.second){Add(mp1[iter.first],-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);mp1[iter.first] iter.second;Add(iter.second,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);}mp2[iter.first] iter.second;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(pos q que[pos].r i){ans[que[pos].id] Sum(que[pos].r)-Sum(que[pos].l-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);pos;}}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i q; i)span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d\n/span,ans[i]);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; }/codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/li/ul 1006 Football GamesLandau’s Theorem 题目大意n支队伍两两比赛赢得2分输不得分平局分别得1分  给出最终得分问是否合法。 Landau’s Theorem的变形赢得1分其余无分即为Landau’s Theorem。 具体证明没明白……判定方式就是从小到大排序。 对于此题如果第i人赢得前面全部的输掉后面全部的最终所有队伍得分就会变成0 2 4 6 8 10这种情况。  那么∃(1≤k≤n)∑ki1s[i]i(i−1)  ∑ni1s[i]n(n−1)则分数无误。 即对于此题 得分最少的i个人的分数总和的下界 为i(i-1) 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;10000/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span maxn span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;233/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span num[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;21234/span];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span judge(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span n) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i n; i){ans num[i];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(ans (ispan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span)*i) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;false/span;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans n*(n-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span); }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span t,n;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(~span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,t)){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(t--){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,n);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i n; i)span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,num[i]);sort(num,numn);span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;puts/span(judge(n)? span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;T/span: span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;F/span);}}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; }/codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/li/ul 1007 Friends and Enemies二分图完美匹配 题目大意  m个人 n种颜色石头。  人与人之间关系要么是朋友要么是敌人关系不具有传递性。  每个人可以携带任何数量任何种颜色的石头也可以不带 对于任何两个人如果是朋友携带的石头至少有一种相同颜色。  如果是朋友携带的石头颜色必须完全不同。 问n种颜色的石头能不能满足所有关系下m个人佩戴的石头都符合要求。 就是找最坏条件下m个人需要的石头种类跟n进行比较。  把m个人分成两组每组内部都是敌人关系两组间两两互为朋友。  这样所需要石头种数就是两组间的连线数并且是最坏情况。 n/2*(n1)/2 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;10000/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span maxn span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;233/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {LL n,m;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(~span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%lld%lld/span,n,m)) span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;puts/span(m (n/span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span)*((nspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span)/span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;2/span)? span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;T/span: span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;F/span);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; }/codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/li/ul 1008 Function优先队列 题目大意  给出n个正整数和q次询问每次询问[l,r] 输出a[l]moda[l1]moda[l2]...moda[r] 已知mod操作类似gcd操作结果是单调的只会小不会大。 把所有询问预存按左边界排序当前左边界存在于询问时加入优先队列对于当前位置优先队列中大于a[i]的都对a[i]取余取到 a[i]即可停止更小的肯定更无变化根据右边界抛出即可 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;typedef/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;long/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;long/span LL; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-9/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span maxn span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;100000/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;100/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Query {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span l,r,x,id;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;operator/span (span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Query a)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span{span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span x a.x;} };span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span a[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;112345/span]; Query que[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;113245/span]; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;112345/span];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span cmp(Query a,Query b) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span a.l b.l; }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span t,n,m;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,t);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(t--){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,n);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i) span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,a[i]);span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,m);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i m; i){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,que[i].l,que[i].r);que[i].id i;que[i].x a[que[i].l];}sort(que,quem,cmp);priority_queue Query,span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;vector/spanQuery/span,greaterQuery q;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span tp span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;Query tmp;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(!q.empty() q.top().x a[i]){tmp q.top();q.pop();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(tmp.r i){ans[tmp.id] tmp.x;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;continue/span;}tmp.x % a[i];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(tmp.r i){ans[tmp.id] tmp.x;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;continue/span;}q.push(tmp);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(tp m que[tp].l i){q.push(que[tp]);tp;}}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(!q.empty()){tmp q.top();q.pop();ans[tmp.id] tmp.x;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; i m; i)span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d\n/span,ans[i]);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; }/codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/li/ul 1009 Sparse Graph补图bfs 题目大意  给出一个图和一个起点S(1 S n)  问补图上S到所有点的最短路除S外 原图边很少用set存尚未遍历的点bfs即可 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;10000/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span maxn span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;233/span;span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;set/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span s; span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;set/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span::iterator iter; span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;map/span Pr,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span/span mp; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span n,m; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans[span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;212345/span];span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span bfs(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span u) {span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;queue/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span q;q.push(u);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(iter s.begin(); iter ! s.end(); iter)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(*iter u){s.erase(iter);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;break/span;}ans[u] span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(!q.empty()){u q.front();span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;// printf(%d\n,u);/spanq.pop();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(iter s.begin(); iter ! s.end(); ){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span v *iter;span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//printf(%d %d\n,u,v);/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(!mp.count(Pr(u,v))){q.push(v);ans[v] ans[u]span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;iter s.erase(iter--);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;else/span iter;}} }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main() {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span t,u,v;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,t);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(t--){mp.clear();s.clear();span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,n,m);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i) s.insert(i);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(m--){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,u,v);mp[Pr(u,v)] mp[Pr(v,u)] span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;}span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,u);span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(ans,-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(ans));bfs(u);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;bool/span f span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(i u) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;continue/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(f) span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;putchar/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box; /span);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;else/span f span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,ans[i]);}span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;puts/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;/span);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; }/codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/li/ul 1010 Weak Pair树型dp树状数组二分 题目大意n个点的树每个点有一个价值v。  找出满足以下条件的点对。  对于点对(u,v) u为v的祖先valu∗valvk 树型dp过程中每遇到一个点把它加到树状数组里。每离开一个点从树状数组里去掉它。 加val[u]前二分出*val[u] k的最大的val  树状数组里找到当前 该val的点的数量 代码如下 code classhljs cpp has-numbering styledisplay: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: Source Code Pro, monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include iostream/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cmath/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include vector/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdlib/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstdio/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include climits/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include ctime/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include cstring/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include queue/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include stack/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include list/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include algorithm/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include map/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#include set/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define LL long long/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define Pr pairint,int/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fread(ch) freopen(ch,r,stdin)/span span classhljs-preprocessor stylecolor: rgb(68, 68, 68); box-sizing: border-box;#define fwrite(ch) freopen(ch,w,stdout)/spanspan classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span INF span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0x3f3f3f3f/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span msz span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;10000/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mod span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e9/spanspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;7/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;double/span eps span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1e-8/span; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;const/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span maxn span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;112345/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;using/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;namespace/span span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;std/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;struct/span Edge {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span v,next; };Edge eg[maxn]; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span head[maxn]; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span bit[maxn]; LL val[maxn]; LL to[maxn]; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span in[maxn]; LL k,tp,ans; span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span id;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span add(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span u,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span v) {eg[tp].v v;eg[tp].next head[u];head[u] tp; }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span Lowbit(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span x(-x); }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span Add(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ad) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(x id){bit[x] ad;x Lowbit(x);} }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span Sum(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(x){ans bit[x];x - Lowbit(x);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span ans; }span classhljs-stl_container stylebox-sizing: border-box;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;map/span span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span/span mp;LL Search(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span x) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span l,r;l span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span,r id;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span ans -span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(l r){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span mid (lr)span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(to[x]*to[mid] k){ans mid;l midspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;else/span r mid-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span;}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(ans -span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span) span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span Sum(ans); }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;void/span solve(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span u,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span pre) {span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span tmp ans;ans Search(mp[val[u]]);span classhljs-comment stylecolor: rgb(136, 0, 0); box-sizing: border-box;//printf(%d %lld %lld\n,u,val[u],ans-tmp);/spanAdd(mp[val[u]],span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i head[u]; i ! -span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i eg[i].next){solve(eg[i].v,u);}Add(mp[val[u]],-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span); }span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span main(){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span n,t,u,v;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d/span,t);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;while/span(t--){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%lld/span,n,k);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%lld/span,val[i]);to[i] val[i];}sort(tospan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span,tonspan classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span);id span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;mp.clear();span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span || to[i] ! to[i-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span]){id;to[id] to[i];mp[to[id]] id;}}span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(bit,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(bit));span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(head,-span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(head));tp span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;memset/span(in,span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span,span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;sizeof/span(in));span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i){span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;scanf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%d%d/span,u,v);in[v];add(u,v);}ans span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span;span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;for/span(span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;int/span i span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;1/span; i n; i)span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;if/span(!in[i]){solve(i,i);span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;break/span;}span classhljs-built_in stylecolor: rgb(102, 0, 102); box-sizing: border-box;printf/span(span classhljs-string stylecolor: rgb(0, 136, 0); box-sizing: border-box;%lld\n/span,ans);}span classhljs-keyword stylecolor: rgb(0, 0, 136); box-sizing: border-box;return/span span classhljs-number stylecolor: rgb(0, 102, 102); box-sizing: border-box;0/span; } /codeul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/lili stylebox-sizing: border-box; padding: 0px 5px;141/lili stylebox-sizing: border-box; padding: 0px 5px;142/lili stylebox-sizing: border-box; padding: 0px 5px;143/lili stylebox-sizing: border-box; padding: 0px 5px;144/lili stylebox-sizing: border-box; padding: 0px 5px;145/lili stylebox-sizing: border-box; padding: 0px 5px;146/lili stylebox-sizing: border-box; padding: 0px 5px;147/lili stylebox-sizing: border-box; padding: 0px 5px;148/lili stylebox-sizing: border-box; padding: 0px 5px;149/lili stylebox-sizing: border-box; padding: 0px 5px;150/lili stylebox-sizing: border-box; padding: 0px 5px;151/lili stylebox-sizing: border-box; padding: 0px 5px;152/lili stylebox-sizing: border-box; padding: 0px 5px;153/lili stylebox-sizing: border-box; padding: 0px 5px;154/lili stylebox-sizing: border-box; padding: 0px 5px;155/lili stylebox-sizing: border-box; padding: 0px 5px;156/lili stylebox-sizing: border-box; padding: 0px 5px;157/lili stylebox-sizing: border-box; padding: 0px 5px;158/lili stylebox-sizing: border-box; padding: 0px 5px;159/lili stylebox-sizing: border-box; padding: 0px 5px;160/lili stylebox-sizing: border-box; padding: 0px 5px;161/lili stylebox-sizing: border-box; padding: 0px 5px;162/lili stylebox-sizing: border-box; padding: 0px 5px;163/lili stylebox-sizing: border-box; padding: 0px 5px;164/lili stylebox-sizing: border-box; padding: 0px 5px;165/lili stylebox-sizing: border-box; padding: 0px 5px;166/lili stylebox-sizing: border-box; padding: 0px 5px;167/lili stylebox-sizing: border-box; padding: 0px 5px;168/lili stylebox-sizing: border-box; padding: 0px 5px;169/li/ulul classpre-numbering stylebox-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);li stylebox-sizing: border-box; padding: 0px 5px;1/lili stylebox-sizing: border-box; padding: 0px 5px;2/lili stylebox-sizing: border-box; padding: 0px 5px;3/lili stylebox-sizing: border-box; padding: 0px 5px;4/lili stylebox-sizing: border-box; padding: 0px 5px;5/lili stylebox-sizing: border-box; padding: 0px 5px;6/lili stylebox-sizing: border-box; padding: 0px 5px;7/lili stylebox-sizing: border-box; padding: 0px 5px;8/lili stylebox-sizing: border-box; padding: 0px 5px;9/lili stylebox-sizing: border-box; padding: 0px 5px;10/lili stylebox-sizing: border-box; padding: 0px 5px;11/lili stylebox-sizing: border-box; padding: 0px 5px;12/lili stylebox-sizing: border-box; padding: 0px 5px;13/lili stylebox-sizing: border-box; padding: 0px 5px;14/lili stylebox-sizing: border-box; padding: 0px 5px;15/lili stylebox-sizing: border-box; padding: 0px 5px;16/lili stylebox-sizing: border-box; padding: 0px 5px;17/lili stylebox-sizing: border-box; padding: 0px 5px;18/lili stylebox-sizing: border-box; padding: 0px 5px;19/lili stylebox-sizing: border-box; padding: 0px 5px;20/lili stylebox-sizing: border-box; padding: 0px 5px;21/lili stylebox-sizing: border-box; padding: 0px 5px;22/lili stylebox-sizing: border-box; padding: 0px 5px;23/lili stylebox-sizing: border-box; padding: 0px 5px;24/lili stylebox-sizing: border-box; padding: 0px 5px;25/lili stylebox-sizing: border-box; padding: 0px 5px;26/lili stylebox-sizing: border-box; padding: 0px 5px;27/lili stylebox-sizing: border-box; padding: 0px 5px;28/lili stylebox-sizing: border-box; padding: 0px 5px;29/lili stylebox-sizing: border-box; padding: 0px 5px;30/lili stylebox-sizing: border-box; padding: 0px 5px;31/lili stylebox-sizing: border-box; padding: 0px 5px;32/lili stylebox-sizing: border-box; padding: 0px 5px;33/lili stylebox-sizing: border-box; padding: 0px 5px;34/lili stylebox-sizing: border-box; padding: 0px 5px;35/lili stylebox-sizing: border-box; padding: 0px 5px;36/lili stylebox-sizing: border-box; padding: 0px 5px;37/lili stylebox-sizing: border-box; padding: 0px 5px;38/lili stylebox-sizing: border-box; padding: 0px 5px;39/lili stylebox-sizing: border-box; padding: 0px 5px;40/lili stylebox-sizing: border-box; padding: 0px 5px;41/lili stylebox-sizing: border-box; padding: 0px 5px;42/lili stylebox-sizing: border-box; padding: 0px 5px;43/lili stylebox-sizing: border-box; padding: 0px 5px;44/lili stylebox-sizing: border-box; padding: 0px 5px;45/lili stylebox-sizing: border-box; padding: 0px 5px;46/lili stylebox-sizing: border-box; padding: 0px 5px;47/lili stylebox-sizing: border-box; padding: 0px 5px;48/lili stylebox-sizing: border-box; padding: 0px 5px;49/lili stylebox-sizing: border-box; padding: 0px 5px;50/lili stylebox-sizing: border-box; padding: 0px 5px;51/lili stylebox-sizing: border-box; padding: 0px 5px;52/lili stylebox-sizing: border-box; padding: 0px 5px;53/lili stylebox-sizing: border-box; padding: 0px 5px;54/lili stylebox-sizing: border-box; padding: 0px 5px;55/lili stylebox-sizing: border-box; padding: 0px 5px;56/lili stylebox-sizing: border-box; padding: 0px 5px;57/lili stylebox-sizing: border-box; padding: 0px 5px;58/lili stylebox-sizing: border-box; padding: 0px 5px;59/lili stylebox-sizing: border-box; padding: 0px 5px;60/lili stylebox-sizing: border-box; padding: 0px 5px;61/lili stylebox-sizing: border-box; padding: 0px 5px;62/lili stylebox-sizing: border-box; padding: 0px 5px;63/lili stylebox-sizing: border-box; padding: 0px 5px;64/lili stylebox-sizing: border-box; padding: 0px 5px;65/lili stylebox-sizing: border-box; padding: 0px 5px;66/lili stylebox-sizing: border-box; padding: 0px 5px;67/lili stylebox-sizing: border-box; padding: 0px 5px;68/lili stylebox-sizing: border-box; padding: 0px 5px;69/lili stylebox-sizing: border-box; padding: 0px 5px;70/lili stylebox-sizing: border-box; padding: 0px 5px;71/lili stylebox-sizing: border-box; padding: 0px 5px;72/lili stylebox-sizing: border-box; padding: 0px 5px;73/lili stylebox-sizing: border-box; padding: 0px 5px;74/lili stylebox-sizing: border-box; padding: 0px 5px;75/lili stylebox-sizing: border-box; padding: 0px 5px;76/lili stylebox-sizing: border-box; padding: 0px 5px;77/lili stylebox-sizing: border-box; padding: 0px 5px;78/lili stylebox-sizing: border-box; padding: 0px 5px;79/lili stylebox-sizing: border-box; padding: 0px 5px;80/lili stylebox-sizing: border-box; padding: 0px 5px;81/lili stylebox-sizing: border-box; padding: 0px 5px;82/lili stylebox-sizing: border-box; padding: 0px 5px;83/lili stylebox-sizing: border-box; padding: 0px 5px;84/lili stylebox-sizing: border-box; padding: 0px 5px;85/lili stylebox-sizing: border-box; padding: 0px 5px;86/lili stylebox-sizing: border-box; padding: 0px 5px;87/lili stylebox-sizing: border-box; padding: 0px 5px;88/lili stylebox-sizing: border-box; padding: 0px 5px;89/lili stylebox-sizing: border-box; padding: 0px 5px;90/lili stylebox-sizing: border-box; padding: 0px 5px;91/lili stylebox-sizing: border-box; padding: 0px 5px;92/lili stylebox-sizing: border-box; padding: 0px 5px;93/lili stylebox-sizing: border-box; padding: 0px 5px;94/lili stylebox-sizing: border-box; padding: 0px 5px;95/lili stylebox-sizing: border-box; padding: 0px 5px;96/lili stylebox-sizing: border-box; padding: 0px 5px;97/lili stylebox-sizing: border-box; padding: 0px 5px;98/lili stylebox-sizing: border-box; padding: 0px 5px;99/lili stylebox-sizing: border-box; padding: 0px 5px;100/lili stylebox-sizing: border-box; padding: 0px 5px;101/lili stylebox-sizing: border-box; padding: 0px 5px;102/lili stylebox-sizing: border-box; padding: 0px 5px;103/lili stylebox-sizing: border-box; padding: 0px 5px;104/lili stylebox-sizing: border-box; padding: 0px 5px;105/lili stylebox-sizing: border-box; padding: 0px 5px;106/lili stylebox-sizing: border-box; padding: 0px 5px;107/lili stylebox-sizing: border-box; padding: 0px 5px;108/lili stylebox-sizing: border-box; padding: 0px 5px;109/lili stylebox-sizing: border-box; padding: 0px 5px;110/lili stylebox-sizing: border-box; padding: 0px 5px;111/lili stylebox-sizing: border-box; padding: 0px 5px;112/lili stylebox-sizing: border-box; padding: 0px 5px;113/lili stylebox-sizing: border-box; padding: 0px 5px;114/lili stylebox-sizing: border-box; padding: 0px 5px;115/lili stylebox-sizing: border-box; padding: 0px 5px;116/lili stylebox-sizing: border-box; padding: 0px 5px;117/lili stylebox-sizing: border-box; padding: 0px 5px;118/lili stylebox-sizing: border-box; padding: 0px 5px;119/lili stylebox-sizing: border-box; padding: 0px 5px;120/lili stylebox-sizing: border-box; padding: 0px 5px;121/lili stylebox-sizing: border-box; padding: 0px 5px;122/lili stylebox-sizing: border-box; padding: 0px 5px;123/lili stylebox-sizing: border-box; padding: 0px 5px;124/lili stylebox-sizing: border-box; padding: 0px 5px;125/lili stylebox-sizing: border-box; padding: 0px 5px;126/lili stylebox-sizing: border-box; padding: 0px 5px;127/lili stylebox-sizing: border-box; padding: 0px 5px;128/lili stylebox-sizing: border-box; padding: 0px 5px;129/lili stylebox-sizing: border-box; padding: 0px 5px;130/lili stylebox-sizing: border-box; padding: 0px 5px;131/lili stylebox-sizing: border-box; padding: 0px 5px;132/lili stylebox-sizing: border-box; padding: 0px 5px;133/lili stylebox-sizing: border-box; padding: 0px 5px;134/lili stylebox-sizing: border-box; padding: 0px 5px;135/lili stylebox-sizing: border-box; padding: 0px 5px;136/lili stylebox-sizing: border-box; padding: 0px 5px;137/lili stylebox-sizing: border-box; padding: 0px 5px;138/lili stylebox-sizing: border-box; padding: 0px 5px;139/lili stylebox-sizing: border-box; padding: 0px 5px;140/lili stylebox-sizing: border-box; padding: 0px 5px;141/lili stylebox-sizing: border-box; padding: 0px 5px;142/lili stylebox-sizing: border-box; padding: 0px 5px;143/lili stylebox-sizing: border-box; padding: 0px 5px;144/lili stylebox-sizing: border-box; padding: 0px 5px;145/lili stylebox-sizing: border-box; padding: 0px 5px;146/lili stylebox-sizing: border-box; padding: 0px 5px;147/lili stylebox-sizing: border-box; padding: 0px 5px;148/lili stylebox-sizing: border-box; padding: 0px 5px;149/lili stylebox-sizing: border-box; padding: 0px 5px;150/lili stylebox-sizing: border-box; padding: 0px 5px;151/lili stylebox-sizing: border-box; padding: 0px 5px;152/lili stylebox-sizing: border-box; padding: 0px 5px;153/lili stylebox-sizing: border-box; padding: 0px 5px;154/lili stylebox-sizing: border-box; padding: 0px 5px;155/lili stylebox-sizing: border-box; padding: 0px 5px;156/lili stylebox-sizing: border-box; padding: 0px 5px;157/lili stylebox-sizing: border-box; padding: 0px 5px;158/lili stylebox-sizing: border-box; padding: 0px 5px;159/lili stylebox-sizing: border-box; padding: 0px 5px;160/lili stylebox-sizing: border-box; padding: 0px 5px;161/lili stylebox-sizing: border-box; padding: 0px 5px;162/lili stylebox-sizing: border-box; padding: 0px 5px;163/lili stylebox-sizing: border-box; padding: 0px 5px;164/lili stylebox-sizing: border-box; padding: 0px 5px;165/lili stylebox-sizing: border-box; padding: 0px 5px;166/lili stylebox-sizing: border-box; padding: 0px 5px;167/lili stylebox-sizing: border-box; padding: 0px 5px;168/lili stylebox-sizing: border-box; padding: 0px 5px;169/li/ul 顶
http://wiki.neutronadmin.com/news/188619/

相关文章:

  • 怎样能创建一个网站官方网站开发哪家好
  • 宁波建设监理管理协会网站建造师官网查询系统
  • 自己做网站除了域名还要买什么临安做企业网站的公司
  • 国外的网站可以做百度推广吗北京软件开发工资
  • 汕头企业制作网站江苏建设行业证书编号查询网站
  • 技术支持 东莞网站建设母婴护理四川刚刚发布的最新新闻
  • 专用车网站建设哪家好网站导航条代码
  • 网站软文推广网站asp.net企业门户网站源码
  • 合作行业网站建设深圳定制旗袍实体店
  • 用dw如何做网站首页百度服务商
  • 网站建设开发教程百度搜索app
  • 广州网站建设论坛百度做自己的网站
  • 北京移动端网站多少钱网页设计公司经营范围
  • 网站建设xm37西湖区商城网站建设
  • 网站域名备案与不备案的区别万维网网站301重定向怎么做
  • 多个网站集成在一个页面网络营销模式有哪些类型
  • 官方网站侵权怎么免费建论坛
  • 营销型网站带来经典企业网站欣赏
  • 校园内部网站建设方案网站备案撤销
  • 展会网站建设 服务器选择很重要公司网站建设需要哪些
  • 房产网签厦门做网站优化公司
  • 制作网站软件都在什么公司大丰城乡建设局网站
  • 网站外链收录很多 内链收录几个网站后台目录如何保护
  • 咨询类网站模板企业年金如何查询
  • 网页编辑用什么软件好超级优化系统
  • 全面的手机网站建设网站开发工程师6
  • 用angular做的网站链接展示网站模版源码
  • 网站开发word自己做网站能关联支付宝吗
  • 心理教育网站建设目的四川网站建设yijia028
  • 网站多语言切换重庆市任免干部