最长等差数列 leetcode java_51nod1055 最长等差数列
完全一臉懵逼!。dp[i][j]表示i,j為相鄰的兩項(xiàng)的最大值。兩個(gè)指針兩邊掃的思想好勁啊這個(gè)!%%%
#include
#include
#include
#include
using namespace std;
#define rep(i,s,t) for(int i=s;i<=t;i++)
#define dwn(i,s,t) for(int i=s;i>=t;i--)
int read(){
int x=0;char c=getchar();
while(!isdigit(c)) c=getchar();
while(isdigit(c)) x=x*10+c-'0',c=getchar();
return x;
}
const int nmax=1e4+5;
short int dp[nmax][nmax];int a[nmax];
void maxs(int &a,int b){
if(a
}
int main(){
int n=read();
rep(i,1,n) a[i]=read();
sort(a+1,a+n+1);
int ans=0,j,k;
rep(i,2,n-1){
j=i-1,k=i+1;
while(j&&k<=n){
if(a[j]+a[k]>2*a[i]) --j;
else if(a[j]+a[k]<2*a[i]) ++k;
else{
if(!dp[j][i]) dp[j][i]=dp[i][k]=3;
else dp[j][i]=dp[i][k]=dp[j][i]+1;
maxs(ans,dp[i][k]);--j;++k;
}
}
}
printf("%d\n",ans);
return 0;
}
基準(zhǔn)時(shí)間限制:2?秒 空間限制:262144?KB 分值:?80?難度:5級(jí)算法題
?收藏
?關(guān)注
N個(gè)不同的正整數(shù),找出由這些數(shù)組成的最長(zhǎng)的等差數(shù)列。
例如:1 3 5 6 8 9 10 12 13 14
等差子數(shù)列包括(僅包括兩項(xiàng)的不列舉)
1 3 5
1 5 9 13
3 6 9 12
3 8 13
5 9 13
6 8 10 12 14
其中6 8 10 12 14最長(zhǎng),長(zhǎng)度為5。
Input
第1行:N,N為正整數(shù)的數(shù)量(3?<=?N?<=?10000)。
第2?-?N+1行:N個(gè)正整數(shù)。(2<=?A[i]?<=?10^9)
Output
最長(zhǎng)等差數(shù)列的長(zhǎng)度。
Input示例
10
1
3
5
6
8
9
10
12
13
14
Output示例
5
n個(gè)整數(shù)中,找出盡可能多的數(shù)使他們組成一個(gè)等差數(shù)列,求最長(zhǎng)等差數(shù)列的長(zhǎng)度
例子: ?3,8,4,5,6,2 ? ? ? ? ?返回值應(yīng)該為 :5 這是昨天做的一道優(yōu)酷土豆的編程題,和leetcode中的128/?Longest Consecutive Sequence 有點(diǎn) ...
51 nod 1055 最長(zhǎng)等差數(shù)列(dp)
1055?最長(zhǎng)等差數(shù)列 基準(zhǔn)時(shí)間限制:2?秒 空間限制:262144?KB 分值:?80?難度:5級(jí)算法題 N個(gè)不同的正整數(shù),找出由這些數(shù)組成的最長(zhǎng)的等差數(shù)列. ? ? 例如:1 3 5 6 8 9 ...
『最長(zhǎng)等差數(shù)列 線性DP』
最長(zhǎng)等差數(shù)列(51nod 1055) Description N個(gè)不同的正整數(shù),找出由這些數(shù)組成的最長(zhǎng)的等差數(shù)列. 例如:1 3 5 6 8 9 10 12 13 14 等差子數(shù)列包括(僅包括兩項(xiàng)的不 ...
【51Nod】1055 最長(zhǎng)等差數(shù)列 動(dòng)態(tài)規(guī)劃
[題目]1055 最長(zhǎng)等差數(shù)列 [題意]給定大小為n的互不不同正整數(shù)集合,求最長(zhǎng)等差數(shù)列的長(zhǎng)度.\(n \leq 10000\). [算法]動(dòng)態(tài)規(guī)劃 兩個(gè)數(shù)之間的差是非常重要的信息,設(shè)\(f_{i,j ...
51nod-1055-最長(zhǎng)等差數(shù)列(dp+優(yōu)化)
1055?最長(zhǎng)等差數(shù)列? 基準(zhǔn)時(shí)間限制:2?秒 空間限制:262144?KB 分值:?80?難度:5級(jí)算法題 ?收藏 ?關(guān)注 N個(gè)不同的正整數(shù),找出由這些數(shù)組成的最長(zhǎng)的等差數(shù)列. ? ? 例如:1 3 ...
51Nod - 1055:最長(zhǎng)等差數(shù)列 (求最長(zhǎng)的等差數(shù)列)
N個(gè)不同的正整數(shù),找出由這些數(shù)組成的最長(zhǎng)的等差數(shù)列. ? ? 例如:1 3 5 6 8 9 10 12 13 14 等差子數(shù)列包括(僅包括兩項(xiàng)的不列舉) 1 3 5 1 5 9 13 3 6 9 12 ...
51Nod 1055 最長(zhǎng)等差數(shù)列 (dp+哈希)
1055?最長(zhǎng)等差數(shù)列? 基準(zhǔn)時(shí)間限制:2?秒 空間限制:262144?KB 分值:?80?難度:5級(jí)算法題 ?收藏 ?關(guān)注 N個(gè)不同的正整數(shù),找出由這些數(shù)組成的最長(zhǎng)的等差數(shù)列. 例如:1 3 5 6 ...
51nod 1055:最長(zhǎng)等差數(shù)列
1055?最長(zhǎng)等差數(shù)列 基準(zhǔn)時(shí)間限制:2?秒 空間限制:262144?KB 分值:?80?難度:5級(jí)算法題 ?收藏 ?取消關(guān)注 N個(gè)不同的正整數(shù),找出由這些數(shù)組成的最長(zhǎng)的等差數(shù)列. 例如:1 3 5 ...
隨機(jī)推薦
對(duì)字符串進(jìn)行簡(jiǎn)單的字符數(shù)字統(tǒng)計(jì) 探索java中的List功能
題目: 統(tǒng)計(jì)一個(gè)字符串中數(shù)字和字符串的個(gè)數(shù),并分別進(jìn)行排列,要求 1.數(shù)字,字符串可以從鍵盤獲取. 2.儲(chǔ)存在list 3.統(tǒng)計(jì)數(shù)字個(gè)數(shù),字符串個(gè)數(shù) 4.把數(shù)字和字符串按從小到大的順序輸出 5.不能使 ...
[轉(zhuǎn)]C#讀寫TEXT文件
1.使用FileStream讀寫文件 文件頭: using System; using System.Collections.Generic; using System.Text; using Sys ...
Macbook配置adb環(huán)境
配置adb命令 http://stackoverflow.com/questions/5526470/trying-to-add-adb-to-path-variable-osx http://sta ...
angular-ui-tree
angular-ui-tree的github項(xiàng)目地址:https://github.com/angular-ui-tree/angular-ui-tree DEMO目錄結(jié)構(gòu)如下: bootstrap. ...
Elasticsearch Index模塊
1.? Index Setting(索引設(shè)置) 每個(gè)索引都可以設(shè)置索引級(jí)別.可選值有: static? :只能在索引創(chuàng)建的時(shí)候,或者在一個(gè)關(guān)閉的索引上設(shè)置 dynamic:可以動(dòng)態(tài)設(shè)置 1.1.??S ...
springmvc的dispatchservlet初始化
初始化做的事情,處理下controller的映射關(guān)系 https://blog.csdn.net/qq_38410730/article/details/79426673
python包管理之Pip安裝及使用-1
Python有兩個(gè)著名的包管理工具easy_install.py和pip.在Python2.7的安裝包中,easy_install.py是默認(rèn)安裝的,而pip需要我們手動(dòng)安裝. pip可以運(yùn)行在Uni ...
PostgreSQL查看表大小的命令
SELECT table_name, pg_size_pretty(table_size) AS table_size, pg_size_pretty(indexes_size) AS indexes ...
C do {...} while (0) 在宏定義中的作用
如果你是一名C程序員,你肯定很熟悉宏,它們非常強(qiáng)大,如果正確使用可以讓你的工作事半功倍.然而,如果你在定義宏時(shí)很隨意沒有認(rèn)真檢查,那么它們可能使你發(fā)狂,浪費(fèi)N多時(shí)間.在很多的C程序中,你可能會(huì)看到許多 ...
Spring整合Hibernate,Druid(Maven)
本文轉(zhuǎn)載自:http://blog.csdn.net/lantazy/article/details/52495839 首先,說一下spring,spring有很好的整合能力,Web應(yīng)用的各個(gè)層次都能 ...
總結(jié)
以上是生活随笔為你收集整理的最长等差数列 leetcode java_51nod1055 最长等差数列的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux怎么在终端里查系统信息,Neo
- 下一篇: Sublime Text 3 离线安装c