博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj1631 Bridging signals
阅读量:4606 次
发布时间:2019-06-09

本文共 1075 字,大约阅读时间需要 3 分钟。

思路:

LIS,二分。

实现:

1 #include 
2 #include
3 using namespace std; 4 int d[40010]; 5 int fuck(int x, int right) 6 { 7 int left = 0; 8 int pos = -1; 9 while (left <= right)10 {11 int middle = (left + right) / 2;12 if (d[middle] >= x)13 {14 pos = middle;15 right = middle - 1;16 }17 else18 {19 left = middle + 1;20 }21 }22 return pos;23 }24 int main()25 {26 int t, n;27 int temp;28 cin >> t;29 while (t--)30 {31 cin >> n;32 int cnt = 0;33 for (int i = 0; i < n; i++)34 {35 scanf("%d", &temp);36 if (cnt == 0 || temp > d[cnt - 1])37 {38 d[cnt++] = temp;39 }40 else41 {42 int pos = fuck(temp, cnt - 1);43 d[pos] = temp;44 }45 }46 printf("%d\n", cnt);47 }48 return 0;49 }

 

转载于:https://www.cnblogs.com/wangyiming/p/6576131.html

你可能感兴趣的文章
使用mdf和ldf附加还原SQL Server数据文件
查看>>
python函数
查看>>
Python美味食谱:1.7 将字符串逐字符或逐词反转
查看>>
LeetCode:Divide Two Integers
查看>>
ubuntu mysql INTO FILE 权限问题
查看>>
CentOs7-常用命令
查看>>
hdu1061
查看>>
查看Sql Server所有表占用的空间大小
查看>>
CSS重置(css reset)【转载】
查看>>
Elasticserach 配置文件详解
查看>>
[ovs] ovs开启日志debug
查看>>
Eclipse插件项目中读取文件
查看>>
jquery定义链接跳转的高亮显示
查看>>
CheckListBox怎样得到多选值?
查看>>
三道题(关于虚表指针位置/合成64位ID/利用栈实现四则运算)
查看>>
Vijos P1243 生产产品 (单调队列优化DP)
查看>>
mysql 数据表操作 目录
查看>>
iOS常用第三方库 -转
查看>>
Android布局学习
查看>>
jQuery中事件绑定与解绑
查看>>