- 最长回文子串
- 词语的布尔表达式解析--后缀表达式
- 数据库缓存双写不一致
- 数据库索引相关问题
- hadoop如何上传文件
- 介绍一下降维的方法,例如PCA之类的方法和MF的方法
- 使用linux完成如下操作:读取一个文件中的值,按照第三列大小排序,取前1000个,展示第一个的值
- 使用sql,取两列中数据相同的记录
- 圆上随机取三点,构成锐角或者钝角的概率
- 经过移位的有序序列查找值--有判断的二分
#include <iostream>
using namespace std;
const int maxn = 1000;
int list[maxn];
int main() {
//int a;
//cin >> a;
//4 5 6 1 2 3
//34567812
//78123456
int n;
int target;
cin >> target;
cin >> n;
for(int i=0;i<n;i++){
cin>>list[i];
}
int left = 0;
int right = n;
int mid;
while(left < right){
mid = (left + right)/2;
if(list[mid] > target){
if(list[left]<target){
right = mid;
}else{
if(list[right]>list[mid]){
right = mid;
}else{
left = mid;
}
}
}else{
if(list[right] < target){
left = mid;
}else{
if(list[right]>list[mid]){
left = mid;
}else{
right = mid;
}
}
}
}
cout << mid << endl;
}评论 (0)



