给力的移动 FZU - 2287
你的弟弟给你安排了一个任务,他给了你1到N个数字的乱序排列,现在你想给你的弟弟秀一波操作,操作最少的次数把序列变成1到N的顺序排列,每次操作你可以选择序列中的一个数字并把它移动到序列的头部或尾部。
Input
包含多组测试数据。
每组测试数据的第一行为正整数N,表示排列的长度。
第二行为N个数字的乱序排列。
n≤100000
Output
输出最少的操作次数
Sample Input
6
6 3 2 4 5 1
Sample Output
3 em 很简单的思维题啊,可是我比赛的时候还是没想到,哭死
如果要最小化这个操作数的话,要移动在值上并不是相邻的数,因为值相邻的话,那我就不必移动这些数,只需要将其他的数按一定的顺序向两头移动就好
那么我们就要找到这个最长的值相邻的子序列 然后剩下的数就是要移动的 这里就是用一个数组记录在这个数输入前,它的前一个数是否出现,如果不出现,它就是序列的头(0+1),如果出现,就继承前面数之前有的数(num+1).
找到其中的最大值就好了
#include<iostream>
#include<cstdio>
#include<string.h>
using namespace std; int ans[];
int main()
{
int n;
while(~scanf("%d",&n))
{
int temp;
memset(ans,,sizeof(ans));
int maxn = ;
for(int i=;i<n;i++)
{
scanf("%d",&temp);
ans[temp] = ans[temp-] + ;
maxn = max(maxn,ans[temp]);
}
printf("%d\n",n-maxn);
}
}
给力的移动 FZU - 2287的更多相关文章
- 2018 HNUCM ACM集训队选拔第一场
1.小c的倍数问题 http://acm.hdu.edu.cn/showproblem.php?pid=6108 分析: 比赛的时候真的是各种想,结果发现自己是想多了...数论基础差得一批 求有多少个 ...
- “不给力啊,老湿!”:RSA加密与破解
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 加密和解密是自古就有技术了.经常看到侦探电影的桥段,勇敢又机智的主角,拿着一长串毫 ...
- codevs 2287 火车站
2287 火车站 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 钻石 Diamond 题目描述 Description 火车从始发站(称为第1站)开出,在始发站上车的人 ...
- FZU 2137 奇异字符串 后缀树组+RMQ
题目连接:http://acm.fzu.edu.cn/problem.php?pid=2137 题解: 枚举x位置,向左右延伸计算答案 如何计算答案:对字符串建立SA,那么对于想双延伸的长度L,假如有 ...
- FZU 1914 单调队列
题目链接:http://acm.fzu.edu.cn/problem.php?pid=1914 题意: 给出一个数列,如果它的前i(1<=i<=n)项和都是正的,那么这个数列是正的,问这个 ...
- ACM: FZU 2105 Digits Count - 位运算的线段树【黑科技福利】
FZU 2105 Digits Count Time Limit:10000MS Memory Limit:262144KB 64bit IO Format:%I64d & ...
- bzoj 2287: 【POJ Challenge】消失之物
Description ftiasch 有 N 个物品, 体积分别是 W1, W2, ..., WN. 由于她的疏忽, 第 i 个物品丢失了. "要使用剩下的 N - 1 物品装满容积为 x ...
- FZU 2112 并查集、欧拉通路
原题:http://acm.fzu.edu.cn/problem.php?pid=2112 首先是,票上没有提到的点是不需要去的. 然后我们先考虑这个图有几个连通分量,我们可以用一个并查集来维护,假设 ...
- ACM: FZU 2107 Hua Rong Dao - DFS - 暴力
FZU 2107 Hua Rong Dao Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I6 ...
随机推荐
- 解决Navicat连接MySQL总是报错1251的方法
今天下了个 MySQL8.0,发现Navicat连接不上,总是报错1251: 原因是MySQL8.0版本的加密方式和MySQL5.0的不一样,连接会报错. 试了很多种方法,终于找到一种可以实现的: 更 ...
- Confluence 6 缓存状态
Confluence 为系统的内部缓存提供了缓存的状态以便于你对缓存的大小的命中率进行跟踪,在必要的情况下,你可以对缓存进行调整,让缓存能够更好的满足你的使用需求.请查看 Performance Tu ...
- hdu4276 依赖背包
网上题解都是用spfa求1-n路径的,但其实dfs一次就可以了.. #include <iostream> #include <cstdio> #include <str ...
- jQuery示例
<!DOCTYPE html><html lang="en" class="loading"><head> <meta ...
- MongoDB数据库备份与还原、单表的导入导出
-------------------MongoDB备份与恢复------------------- 1.MongoDB数据库备份 1.语法: mongodump -h dbh ...
- 使用sysbench 0.5 对mysql 进行性能、压力测试
sysbench是一个模块化的.跨平台.多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况.目前sysbench代码托管在launchpad上,项目地址:https://launc ...
- Command 'ifconfig' not found, but can be installed with: sudo apt install net-tools
然后按照错误信息安安装网络工具: sudo apt install net-tools shl@shl-tx:~$ sudo apt install net-tools正在读取软件包列表... 完成正 ...
- 快速部署网络爬虫框架scrapy
1. 安装Anaconda,因为Anaconda基本把所有需要依赖的环境都一键帮我们部署好了,不需要再操心其他事了,进官网选择需要下载的版本:https://www.anaconda.com/down ...
- IDEA抛出No bean named 'cacheManager' available解决方法
(正确的,老师发我的) <?xml version="1.0" encoding="UTF-8"?><beans xmlns="ht ...
- Python面向对象 三大特性 综合案例+1(视频里的作业)
class Dog: # 在创建一个小狗实例的时候,给它设置几个属性 def __init__(self, name, age = 1): self.name = name self.age = ag ...