码迷,mamicode.com
首页 > 其他好文 > 详细

Codeforces Round #460 (Div. 2) 919 笔记

时间:2018-04-11 19:09:20      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:最小花费   tutorial   最大值   游戏   ==   玩游戏   题解   暴力枚举   数位dp   

A. Supermarket
输入n,m, (1?≤?n?≤?5?000, 1?≤?m?≤?100)表示n组价格数据和目标重量m
接下来n组价格数据,表示为a元b千克,每组无限取
求最小花费
B. Perfect Number
输入k,1?≤?k?≤?10?000,求第k个完美数
完美数定义为数位和=10
(tutorial中说难度可以升级为k<1e18)->用数位dp可解
C. Seat Arrangements
输入n,m,k (1?≤?n,?m,?k?≤?2?000)表示nm的课室,有k人
要求k人横着坐或竖着坐,求方案数
输入.表示空位,
表示已坐
(如果是任意连着坐,难度好像很大?)
D. Substring
输入n,m <3e5 表示n点m条有向边
第二行输入由小写字母形成的字符串,表示每个点上的字符
接着输入边
路径的值为路径上出现最多字母的个数,求路径的最大值,无穷输出-1
E. Congruence Equation
输入a,b,p,x (2?≤?p?≤?10e6?+?3, 1?≤?a,?b?<?p, 1?≤?x?≤?10e12).
求多少个n(1<=n<=x)满足n(a^n)=b(mod p)(p是素数)
F. A Game With Numbers
A和B玩游戏,每人8张牌,每张牌的值为0到4,当轮到某人时,要从两人手中各拿一张牌a和b,要求a
b!=0,然后用c=(a+b)%5替换掉自己拿的牌,如果有人手上全是0,就赢了。给出T组数据,每组给出两人手上各牌的值,给出谁先手,问在最优策略下,谁能赢,或者打平。
(1<=T<=1e5)





笔记(非题解):

A B 水题
C 横着、竖着暴力枚举即可
D 原先做法dp[i]表示当前i到之后路径上最大值,另用辅助数组d[i][j]表示i最优时颜色j的数目
实际上只要d[i][j]即可,表示到i时j的最大值,转移维护即可
是DAG用上法,有环则-1
E

  1. n%p的周期为p,
  2. a^n%p的周期为p-1,
  3. 整个左式的周期为p(p-1)
    由1知n=i
    p+j
    a^(p-1)%p=1
    令n=i(p-1)+j
    由欧拉降幂公式知a^n%p->a^(n%(p-1))%p->a^j%p
    (i
    (p-1)+j)a^j==b
    ->j-i==b/(a^j)
    ->i==j-b/(a^j)
    枚举j求i,求n,然后不断+p
    (p-1),判断是否ok即可

F 留坑

Codeforces Round #460 (Div. 2) 919 笔记

标签:最小花费   tutorial   最大值   游戏   ==   玩游戏   题解   暴力枚举   数位dp   

原文地址:https://www.cnblogs.com/Surrender/p/8759088.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!