题意:

第一场div3, 求的是一个序列中最长连续(a,a+1,a+2...)子序列。

分析:

设一个DP[i] 表示 序列以i结尾的最长长度, 一开始都设为0。

那么如果这个数是a, 他的最长长度就是 Dp[a-1] + 1, 最后找出最大那个值就是答案, 倒回去输出序列就可以了

#include <bits/stdc++.h>
using namespace std;
const int maxN = 2e5 + ;
int a[maxN];
map<int, int> dp;
int main(){
ios::sync_with_stdio(false);
int n;
cin >> n;
int maxCnt = -, last;
for(int i = ;i <= n; i++){
int temp;
cin >> temp;
a[i] = temp;
dp[temp] = dp[temp-] + ;
if(dp[temp] > maxCnt){
maxCnt = dp[temp];
last = temp;
}
}
cout << maxCnt << "\n";
int b = last;
vector<int> ans;
for(int i = n; i >= ; i--){
if(a[i] == last){
ans.push_back(i);
last--;
}
}
reverse(ans.begin(), ans.end());
for(int i = ; i < ans.size(); i++){
cout << ans[i] << ' ';
}
}

CF 977 F. Consecutive Subsequence的更多相关文章

  1. codeforce 977 F. Consecutive Subsequence

    F. Consecutive Subsequence time limit per test 2 seconds memory limit per test 256 megabytes input s ...

  2. Codeforces Round #479 (Div. 3) F. Consecutive Subsequence (简单dp)

    题目:https://codeforces.com/problemset/problem/977/F 题意:一个序列,求最长单调递增子序列,但是有一个要求是中间差值都是1 思路:dp,O(n)复杂度, ...

  3. Codeforces Round #479 (Div. 3) F. Consecutive Subsequence (DP)

    题意:给你一个长度为\(n\)的序列,求一个最长的\({x,x+1,x+2,.....,x+k-1}\)的序列,输出它的长度以及每个数在原序列的位置. 题解:因为这题有个限定条件,最长序列是公差为\( ...

  4. CF 633 F. The Chocolate Spree 树形dp

    题目链接 CF 633 F. The Chocolate Spree 题解 维护子数答案 子数直径 子数最远点 单子数最长直径 (最长的 最远点+一条链) 讨论转移 代码 #include<ve ...

  5. Codeforces 977F - Consecutive Subsequence - [map优化DP]

    题目链接:http://codeforces.com/problemset/problem/977/F 题意: 给定一个长度为 $n$ 的整数序列 $a[1 \sim n]$,要求你找到一个它最长的一 ...

  6. Consecutive Subsequence CodeForces - 977F(dp)

    Consecutive Subsequence CodeForces - 977F 题目大意:输出一序列中的最大的连续数列的长度和与其对应的下标(连续是指 7 8 9这样的数列) 解题思路: 状态:把 ...

  7. [CF977F]Consecutive Subsequence

    题目描述 You are given an integer array of length n. You have to choose some subsequence of this array o ...

  8. Consecutive Subsequence CodeForces - 977F (map优化DP)·

    You are given an integer array of length nn. You have to choose some subsequence of this array of ma ...

  9. Consecutive Subsequence (DP+map)

    You are given an integer array of length nn. You have to choose some subsequence of this array of ma ...

随机推荐

  1. 51Nod 1021 石子归并(动态规划)

    #include <iostream> #include <algorithm> #include <string> #include <iostream&g ...

  2. 洛谷 P2841 A*B Problem

    https://www.luogu.org/problemnew/show/P2841 根本不会啊... 大概就是:如果两个数模a的结果相同,那么它们前面同时加上一个0或1后模a的结果仍然相同,因此可 ...

  3. RHEL 6.5-----MFS

    主机名 IP  安装服务 master  192.168.30.130   mfsmaster.mfsmetalogger node-1  192.168.30.131  chunkserver  n ...

  4. PowerShell~文件操作和对象遍历

    ps提供了丰富的文件操作,如建立,删除,改名,移动,复制,文件夹建立,显示文件列表,同时对数组对象的遍历也很方便,如果在使用PS脚本时,希望现时传入参数,可以把参数声明为param,当然需要把它写在文 ...

  5. P1664 每日打卡心情好

    题目背景 在洛谷中,打卡不只是一个简单的鼠标点击动作,通过每天在洛谷打卡,可以清晰地记录下自己在洛谷学习的足迹.通过每天打卡,来不断地暗示自己:我又在洛谷学习了一天,进而帮助自己培养恒心.耐心.细心. ...

  6. phpcms v9模板制作教程

    phpcms v9模板制作教程(转载) 第一节 1.首先下载phpcms v9的集成安装包并安装,这里就不详细说明了. 2.本地调试建议大家使用APMserver,或者wampserver等,可以到P ...

  7. 让jquery.tmpl支持序号${index}

    参考 http://blog.csdn.net/wangji5850/article/details/50913121 压缩的查找第一个map,添加 jQuery.map( h, function( ...

  8. Intent实现界面跳转、程序跳转

    一个程序往往由多个界面组成,界面之间的跳转,实质是Activity之间的跳转. 从当前程序跳转到其它程序,实质是启动了目标程序的入口Activity. Intent被称为意图,常用于组件之间的交互,可 ...

  9. grunt配置详情

    这个grunt配置 是我的一个程序员朋友从网上无意间看到的,然后他亲测了下,恩,是可以的.不过我到目前还未测试过是否可以. 一.安装node, 首先确保电脑已有node的环境.然后 运行  npm i ...

  10. CCF|中间数|Java

    import java.util.*; public class tyt { public static void main(String[] args) { Scanner in = new Sca ...