2019牛客国庆集训派对day1 D.Modulo Nine(巧妙的dp)
发布日期:2021-06-30 10:32:57
浏览次数:2
分类:技术文章
本文共 862 字,大约阅读时间需要 2 分钟。
考虑这么多限制很不好做,而且区间可能彼此嵌套,无法同时满足限制
考虑一段区间乘机模 9 9 9为零有什么特殊点.
其实就是分解质因子之后,至少有两个因子都为 3 3 3
那么我们在第 i i i位填充了 3 , 6 3,6 3,6后,相当于在这个位置设置了一个因子 3 3 3
我们在第 i i i位填充了 9 , 0 9,0 9,0后,相当于在这个位置设置了两个因子 3 3 3
所以我们对于每个位置 i i i,考虑它作为限制区间的右端点,那么若干个左端点只有最右的区间有用
所以我们定义 f [ i ] [ j ] [ k ] f[i][j][k] f[i][j][k]表示填充了 [ 1 , i ] [1,i] [1,i]的数字,且满足了所有右端点小于等于 i i i的区间限制
最近出现的因子 3 3 3为 k k k位置,次近的是 j j j位置
#includeusing namespace std;#define int long longconst int mod = 1e9+7;const int maxn = 59;typedef pair p;int n,m,f[maxn][maxn][maxn],lim[maxn];signed main(){ while( cin >> n >> m ) { for(int i=1;i<=m;i++) { int l,r; cin >> l >> r; if( lim[r]==0 || lim[r] =lim[n] ) ans = ( ans+f[n][j][k] )%mod; for(int i=0;i<=n;i++) for(int j=0;j<=n;j++) for(int k=0;k<=n;k++) f[i][j][k] = 0; memset( lim,0,sizeof lim ); cout << ans << endl; }}
转载地址:https://issue-is-vegetable.blog.csdn.net/article/details/116464223 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月08日 22时37分46秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
程序员之间的各种鄙视链
2019-04-30
基于PHP的网上商城
2019-04-30
基于PHP和MySQL实现的高校成绩管理系统
2019-04-30
基于TCP socket实现的HTTP WEB服务器
2019-04-30
基于Web搜索引擎的设计与实现
2019-04-30
图书管理系统
2019-04-30
基于AdaBoost算法的情感分析研究
2019-04-30
基于C的α-β剪枝算法实现的AI五子棋游戏
2019-04-30
基于Python的Django和MySQL实现的合同管理系统
2019-04-30
基于python实现的电影推荐系统
2019-04-30
基于QT的网络五子棋游戏程序的设计与实现
2019-04-30
基于SOA的分布式水果商店系统
2019-04-30
基于SSH的易买网商城的设计与实现
2019-04-30
基于SSH的婴幼儿产品销售系统的开发与设计毕业设计论文
2019-04-30
基于智能手机的报纸阅读器-论文
2019-04-30
网上体育商城的设计与实现毕业设计论文
2019-04-30
基于springboot项目申报系统完整源码
2019-04-30
Docker知识一:相关安装和基础命令
2019-04-30
Docker知识二:容器的数据卷
2019-04-30
Docker知识三:应用部署
2019-04-30