zzulioj--1842--LT的求助again and again(模拟||LIS)
2016-05-03 22:28
721 查看
Submit: 34 Solved: 31
SubmitStatusWeb
Board
题目如下:
给出n个任意顺序排放的数,LT每一次可以移动其中一个数到数列的最前面或者最后面,问题是LT最少需要多少次操作才能将这个数列完美的按照从
小到大排列?
然后输入一个n(1 <= n <= 105),接着是n个数
5
5 1 2 3 4
4
3 4 1 2
2
以前是模拟水过的,但是
5
2 3 1 5 4
过不了,应该是系统后台太弱,LIS正反两次乱搞了一下,过了,不知道有木有bug,弱弱LIS也是水的很
模拟
1842: LT的求助again and again
Time Limit: 1 Sec Memory Limit: 256 MBSubmit: 34 Solved: 31
SubmitStatusWeb
Board
Description
众所周知,我T哥打的一手好斗地主。这天LT正在101斗地主,突然WT说我来给你出道题吧(前面都是我编的)题目如下:
给出n个任意顺序排放的数,LT每一次可以移动其中一个数到数列的最前面或者最后面,问题是LT最少需要多少次操作才能将这个数列完美的按照从
小到大排列?
Input
输入第一行是一个T,代表有T组数据(1 <= T <= 1000)然后输入一个n(1 <= n <= 105),接着是n个数
Output
输出一个数字,代表最少的操作次数。Sample Input
25
5 1 2 3 4
4
3 4 1 2
Sample Output
12
以前是模拟水过的,但是
5
2 3 1 5 4
过不了,应该是系统后台太弱,LIS正反两次乱搞了一下,过了,不知道有木有bug,弱弱LIS也是水的很
模拟
#include<cstdio> #include<cstring> #include<algorithm> using namespace std; int num[1010]; int main() { int t; scanf("%d",&t); while(t--) { int n; scanf("%d",&n); memset(num,0,sizeof(num)); for(int i=1;i<=n;i++) scanf("%d",&num[i]); int ans=n; for(int i=n;i>=1;i--) { if(ans==num[i]) ans--; } printf("%d\n",min(ans,n-ans)); } return 0; }LIS瞎搞
#include<cstdio> #include<cstring> #include<algorithm> using namespace std; int num[1010]; int a[1010]; int main() { int t; scanf("%d",&t); while(t--) { int n; memset(a,0,sizeof(a)); memset(num,0,sizeof(num)); scanf("%d",&n); for(int i=0;i<n;i++) scanf("%d",&num[i]); a[0]=num[0]; int l=1; for(int i=1;i<n;i++) { if(num[i]>a[l-1]) a[l++]=num[i]; else { int s=upper_bound(a,a+l,num[i])-a; a[s]=num[i]; } } int ans=l; a[0]=num[n-1]; l=1; for(int i=n-2;i>=0;i--) { if(num[i]>a[l-1]) a[l++]=num[i]; else { int s=upper_bound(a,a+l,num[i])-a; a[s]=num[i]; } } ans=min(n-ans,n-l); printf("%d\n",ans); } return 0; }
相关文章推荐
- OpenAI Gym 关于CartPole的模拟退火解法
- hdu3089 Josephus again(快速约瑟夫环)
- Responder Chain简析
- main()是程序运行的第一个函数吗?
- 小何讲进程: 阻塞进程函数 wait()和waitpid()
- 操作系统raid
- POJ-3216-Repairing Company(最小路径覆盖)
- wait和waitpid函数
- POJ 1422 Air Raid
- Air Infomation System 基于控制台的航班信息系统(方法总结)
- Intel S5000VSA(SAS)主板设置RAID 步骤【转】
- linker command failed with exit code 1 (use -v to see invocation)
- WM_PAINT 消息与 OnDraw、OnPaint()
- IDEA快捷键 如syso(sout Tab键)main(psvm Tab键)
- CodeForces 616E Sum of Remainders(数论)
- 山东省第一届ACM大学生程序设计竞赛 Fairy tale 大模拟
- samba “The specified network name is no longer available” 出错的解决办法
- 利用正则表达式:找到一段字符串中所有的IP地址和Email地址
- TensorFlow教程02:针对机器学习初学者的MNIST实验——Softmax回归
- mac上google chrome helper占内存,mac air 发热