Luogu P4616 [COCI2017-2018#5] Pictionary

发布于 # algorithm

1 题意

在第 ii 天,如果 gcd(a,b)=mi+1\gcd(a,b) = m - i + 1,那么 a,ba,b 之间会建立一条边

给定 a,ba,b,求 a,ba,b 最早什么时候连通

多组询问,离线

1n,q105,1mn,1a,bn1 \leq n ,q \leq 10^5, 1 \leq m \leq n, 1 \leq a, b \leq n

n,m,q,a,bZn,m,q,a,b \in \mathbb{Z}

POJ 3071 Football

发布于 # algorithm

1 题目大意

给定 2n2^n 个整数,从 112n2^n 编号

给定 pi,j(1in,1jn)p_{i,j}(1\leq i \leq n, 1 \leq j \leq n)

定义一次操作为

选中 2k2k2k+12k+1 ( 0k,kZ,2k+1n0 \leq k, k \in Z, 2k+1 \leq n ) 其中有 p2k,2k+1p_{2k,2k+1} 的概率选中 2k2k 其中有 p2k+1,2kp_{2k+1,2k} 的概率选中 2k+12k+1

把所有选择的数字组成一个新的数列,大小为 n2\frac{n}{2}

显然最后会只剩 11 个数字

问剩哪个数字的概率最大

AtCoder Regular Contest 084 D Small Multiple

发布于 # algorithm

题意

题目链接: https://atcoder.jp/contests/arc084/tasks/arc084_b

要求 x=ak(aN)x = ak(a \in N),定义 f(x)f(x)xx 在十进制下每一位数字的和

思路

一开始肯定想的是大力枚举,但是很快就可以发现大力枚举可以被卡掉,因为另一个数字可以非常大

然后就考虑缩小另一个数字的范围

一开始的思路顺着质因数分解走的,但是想了半天没有想出来

考后发现顺着质因数的过于复杂,我们可以直接考虑 xmodkx \bmod k 意义下的情况

xxx+1x + 1,答案显然增加 1

但是如果 x 一直加 1 会加到 10 ,这个情况答案在事实上没有增加 1

我们可以发现只有其在某一步变成 10 倍才会发生这种事件,那么再加一条边

xx10x10x,答案不增加

这样就构成了一条图,从 0011 的最短路就是所求答案

Woshiluo's NoteBook

「Jump up HIGH!!」