摘要:
HDU 4389 (数位dp) 题意 求一个区间内[L,R] 内 有多少个 数满足:它的数位和能整除它本身。 思路 按照一般数位dp的套路,多出来的参数无非就是数位和以及这个数本身,但如果直接这样做会发现一个问题:每增加一位,数位和就会发生变化,所以还要添加一个参数mod作为最终的数位和,在外层枚举 阅读全文
摘要:
[AtCoder Beginner Contest 278] F 题意 给定n个字符串,两个玩家轮流进行操作,每个玩家选择一个字符串,条件为选择第一个字符串或者选的字符串的首字母与上一个字符串的最后一个字母相同 思路 dfs+博弈论(或者找到奇数链或奇数环) 预处理将可以接上的字符串连边 for(i 阅读全文
摘要:
ABC 272 D 题意 给定一个N*N的棋盘,棋子初始位置在(1,1),给定一个数M,棋子每步操作可以走到距离不超过M的位置,假设棋子在(i,j),则下一步(x,y)应满足(x-i)×(x-i)+ (y-j)×(y-j)<= M 思路 这是加强版的bfs,平常的bfs一般是四个方向或者八个方向,这 阅读全文
摘要:
# AtCoder Beginner Contest 281 D 题意 从一个大小为N的数组中选择K个数,使得这K个数的和是D的最大倍数。 题解 有数据范围1<=K<=N<=100,D<=100可知,这是个简单dp. nt n,m,K,D; int f[110][110]; int a[110]; 阅读全文
摘要:
CodeForces 851 div 2 (ABC) A (签到) 题意:给定一个数组,只有0和1,问能否找到某个i,使得前i个数的连乘等于后面的数的连乘。 题解:记录数组中2的个数为cnt,奇数无解,遍历数组,当遍历到2的个数等于cnt/2则为答案。 void solve() { cin>>n; 阅读全文