CF264B Good Sequences
Description:
松鼠丽丝特别喜欢n个她称之为“好整数”的整数:a1,a2,……,an。(会输入)
现在,她对“好序列”很感兴趣。如果一个序列x1,x2,...,xk能够满足一下三个条件,那就是一个“好序列”:
1.该序列是严格上升的,即x[i]<x[i+1](1<=i<=k-1)
2.任意两个相邻的元素是非互质的,即gcd(x[i],x[i+1])>1 (1<=i<=k-1) (gcd即最大公约数)
3.所有的数字都是“好整数”
现在,请你找出长度最长的“好序列”
暴力DP解法:(当然不是AC做法)
就是很像导弹拦截
dp[i]表示以编号为i的好数结尾的最长好序列
枚举判断转移就OK啦
#include<iostream>
#include<cstdio>
#include<algorithm>
#define R register
#define go(i,a,b) for(R int i=a;i<=b;i++)
#define ll long long
#define M 100000
using namespace std;
int read()
{
int x=,y=;char c=getchar();
while(c<''||c>'') {if(c=='-') y=-;c=getchar();}
while(c>=''&&c<='') {x=(x<<)+(x<<)+c-'';c=getchar();}
return x*y;
}
int n,a[M],dp[M],ans;
int gcd(int x,int y)
{
return x%y==?y:gcd(y,x%y);
}
int main()
{
n=read();
go(i,,n) a[i]=read(),dp[i]=;
sort(a+,a+n+);
go(i,,n)
{
go(j,,i-) if(gcd(a[i],a[j])>) dp[i]=max(dp[i],dp[j]+);
ans=max(ans,dp[i]);
}
printf("%d",ans);
}暴力DP Code
正解:
之前的n2转移是枚举判断两个数是否互质
如果两个数之间不互质其实就是有除了1以外的公因数
我们发现a[i]是小于等于105的
所以可以记录b[i]为以i为因数的好数结尾的好序列的最大长度
具体见代码 很好懂的啦
CODE:
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#define R register
#define go(i,a,b) for(R int i=a;i<=b;i++)
#define ll long long
#define M 100000+10
using namespace std;
int read()
{
int x=,y=;char c=getchar();
while(c<''||c>'') {if(c=='-') y=-;c=getchar();}
while(c>=''&&c<='') {x=(x<<)+(x<<)+c-'';c=getchar();}
return x*y;
}
int n,a[M],b[M],dp[M],ans;
int main()
{
n=read();
go(i,,n) a[i]=read(),dp[i]=;
sort(a+,a+n+);
go(i,,n)
{
int x=a[i],maxn=sqrt(a[i])+;
go(j,,maxn)
{
if(x%j==) dp[i]=max(dp[i],b[j]+);
while(x%j==) x/=j;
}
if(x>) dp[i]=max(dp[i],b[x]+);
x=a[i];
go(j,,maxn)
{
if(x%j==) b[j]=dp[i];
while(x%j==) x/=j;
}
if(x>) b[x]=dp[i];
ans=max(ans,dp[i]);
}
printf("%d",ans);
}
CF264B Good Sequences的更多相关文章
- 【题解】CF264B Good Sequences
[题解]CF264B Good Sequences 具有很明显的无后效性. 考虑\(dp\). 考虑初始条件,显然是\(dp(0)=0\) 考虑转移,显然是\(dp(t)=max(dp[k])+1\) ...
- 洛谷CF264B Good Sequences dp
解题报告:dp+数论 解题报告: 传送门! 开始看这题的时候想挂了,,,想了个显然是错解的想法,,,就是,我也不知道我怎么想的,鬼迷心窍地就想开个数组存每个质因数的倍数的出现次数,然后排下序的max就 ...
- [LeetCode] Repeated DNA Sequences 求重复的DNA序列
All DNA is composed of a series of nucleotides abbreviated as A, C, G, and T, for example: "ACG ...
- [Leetcode] Repeated DNA Sequences
All DNA is composed of a series of nucleotides abbreviated as A, C, G, and T, for example: "ACG ...
- 论文阅读(Weilin Huang——【AAAI2016】Reading Scene Text in Deep Convolutional Sequences)
Weilin Huang--[AAAI2016]Reading Scene Text in Deep Convolutional Sequences 目录 作者和相关链接 方法概括 创新点和贡献 方法 ...
- leetcode 187. Repeated DNA Sequences 求重复的DNA串 ---------- java
All DNA is composed of a series of nucleotides abbreviated as A, C, G, and T, for example: "ACG ...
- [UCSD白板题] Longest Common Subsequence of Three Sequences
Problem Introduction In this problem, your goal is to compute the length of a longest common subsequ ...
- Python数据类型之“序列概述与基本序列类型(Basic Sequences)”
序列是指有序的队列,重点在"有序". 一.Python中序列的分类 Python中的序列主要以下几种类型: 3种基本序列类型(Basic Sequence Types):list. ...
- Extract Fasta Sequences Sub Sets by position
cut -d " " -f 1 sequences.fa | tr -s "\n" "\t"| sed -s 's/>/\n/g' & ...
随机推荐
- 正则化项L1和L2
本文从以下六个方面,详细阐述正则化L1和L2: 一. 正则化概述 二. 稀疏模型与特征选择 三. 正则化直观理解 四. 正则化参数选择 五. L1和L2正则化区别 六. 正则化问题讨论 一. 正则化概 ...
- API的HTTP Status Code
响应中的状态码 状态码 定义 说明 1xx 信息 接收到请求,继续处理 2xx 成功 操作成功地收到请求,理解和接受 3xx 重定向 为了完成请求,必须采取进一步擦措施 4xx 客户端错误 请求的语法 ...
- windows多线程(九) PV原语分析同步问题
一.PV原语介绍 PV原语通过操作信号量来处理进程间的同步与互斥的问题.其核心就是一段不可分割不可中断的程序. 信号量的概念1965年由著名的荷兰计算机科学家Dijkstra提出,其基本思路是用一种新 ...
- NeuralEnhance: 提高图像分辨率的深度学习模型
NeuralEnhance是使用深度学习训练的提高图像分辨率的模型,使用Python开发,项目地址:https://github.com/alexjc/neural-enhance. 貌似很多电影都有 ...
- js遍历数组和遍历对象
可以用for in来遍历对象,具体内容如下: <script type="text/javascript"> var objs = { ...
- 计算机网络【10】—— Cookie与Session
一.cookie 和session 的区别 a.cookie数据存放在客户的浏览器上,session数据放在服务器上. b.cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKI ...
- C 函数——Day04
C 函数 函数是一组一起执行一个任务的语句.每个 C 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数. 您可以把代码划分到不同的函数中.如何划分代码到不同的函数 ...
- Day24-KindEditor基本使用和文件操作1
KindEditor是一套开源的HTML可视化编辑器,主要用于让用户在网站上获得所见即所得编辑效果,兼容IE.Firefox.Chrome.Safari.Opera等主流浏览器. 摘自老师博客:htt ...
- 一些$LCT$的瓜皮题目
一些瓜皮 放几个比较优(she)秀(pi)的\(LCT\)题. 老惯例,每一题代码因为一些未知原因消失了(如果要的话私我好了,虽然会咕咕咕). 嘴巴\(AC\)真香! [SP16580] QTREE7 ...
- Web前端开发神器--WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版
WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版 http://www.jb51.net/softs/171905.html WebStorm 是jetbrains公司旗 ...