https://www.luogu.com.cn/contest/271577回顾
T1 P11557 [ROIR 2016] 有趣数字 (Day 2)
这题是一个比较明显的数位dp,非常简单
由于没有大样例,对拍花了点时间,大约40minAC
T2 P7846 「dWoi R2」Arcade hall / 街机厅
因为有什么敌对关系,友好关系,一开始想的是并查集
但是后面发现并查集没什么用处,模拟了一组样例
发现第一小问一个dfs就可以了,然后大概花了十几分钟打出来
然后就是第二小问,一开始想的是贪心,但发现当敌对关系和友好关系
同时出现的时候就不太好贪心了,然后考虑到O(nr)刚好1e7左右
那就考虑树形dp,dp[i][j]为i和i的子树在i的w值为j的时候的最小w和
然后就很容易写了,大约2hAC
T3 P7474 「C.E.L.U-02」学术精神
第一小问比较好推,场上写出来了
但是没输出第二个整数,被判格式错误,0分了
这题第二小问比较巧妙,一个比赛集中所有点都指向比赛集内部的点
且每个人只主动联系一次,所以会有与比赛集点的数量相同的边
所以一个比赛集构成一个基环树,这样就按照大小推就好了。
场外AC
T4 P5856 「SWTR-3」Game
场上推出可以将每个数分解质因数
然后每个质因数独立对指数进行操作
但是场上的时候猜了一个结论,认为操作次数等于不同种指数个数
但是这个结论是假的(竟然还有13分)
错误代码片段如下:
点击查看代码
for(int i=1;i<=n;i++){
for(int j=2;j*j<=a[i];j++){
if(a[i]%j==0){
int cnt=0;
while(a[i]%j==0){
cnt++;
a[i]/=j;
}
if(mp[{j,cnt}]==false){
mp[{j,cnt}] = true;
ans++;
}
}
}
if(a[i]>1){
if(mp[{a[i],1}]==false){
mp[{a[i],1}] = true;
ans++;
}
}
}
正解是状压dp求解每个质因数的操作次数
场外AC

浙公网安备 33010602011771号