luogu 4411 [BJWC2010]取数游戏 约数+dp
2024-09-04 00:53:56
不大难的dp,暴力拆一下约数然后按照约数来统计即可.
注意:vector 很慢,所以一定特判一下,如果没有该数,就不要添加.
Code:
#include <bits/stdc++.h>
#define N 1000005
#define setIO(s) freopen(s".in","r",stdin)
using namespace std;
vector<int>v[N];
int prime[N],f[N],g[N],A[N];
bool vis[N],go[N];
int main()
{
// setIO("input");
int n,L,i,j,tot=0,M=0;
scanf("%d%d",&n,&L);
for(i=1;i<=n;++i) scanf("%d",&A[i]), go[A[i]]=1;
for(i=2;i<N;++i)
{
if(!vis[i]) prime[++tot]=i;
for(j=1;j<=tot&&prime[j]*i<N;++j)
{
vis[i*prime[j]]=1;
if(i%prime[j]==0) break;
}
}
for(i=L;i<N;++i) for(j=i;j<N;j+=i) if(go[j])v[j].push_back(i);
for(i=1;i<=n;++i)
{
int c=A[i],mx=0;
for(j=0;j<v[c].size();++j)
{
int cur=v[c][j];
++g[cur];
mx=max(mx, g[cur]);
}
for(j=0;j<v[c].size();++j)
{
int cur=v[c][j];
g[cur]=mx;
}
M=max(M,mx);
}
printf("%d\n",M);
return 0;
}
最新文章
- c#socket编程基础
- 深入浅出设计模式——解释器模式(Interpreter Pattern)
- Leetcode 之Convert Sorted List to Binary Search Tree(55)
- android 4.4 状态栏隐藏
- How to add alias on Mac(It&#39;s common for most system)
- 201521123039《java程序设计》第十四周学习总结
- linux内存源码分析 - 内存池
- 多项式乘法(FFT)学习笔记
- markdown 基本语法(转载)
- TCP/IP协议 模型
- 因微信SSJD分享接口升级,分享变化
- Android学习笔记----Java中的字符串比较
- 【洛谷】【最小生成树】P1536 村村通
- mysql的完整卸载
- mysql正则表达式,实现多个字段匹配多个like模糊查询
- C#中使用NLua z
- 最小生成树(prim)
- nginx解析漏洞
- appium+python自动化测试真机测试时报错“info: [debug] Error: Could not extract PIDs from ps output. PIDS: [], Procs: [";bad pid &#39;uiautomator&#39;";]”
- CRUD
热门文章
- 关于springboot的日志logging.file和logging.path的配置问题
- Codeforces 1247C. p-binary
- Angular6如何引入jQuery-knob
- JAVA中ArrayList重写比较方法
- jquery.serializejson.min.js的妙用
- vue 实现textarea展示时自动换行
- WinPE基础知识之导入表
- K2 BPM_如何将RPA的价值最大化?_全球领先的工作流引擎
- 【3】Git命令
- Win10系统升级更新方式将会更智能