华为OD 小明找位置 C语言实现

cpp 复制代码
int main(void)
{
    int i = 0;
    int len = 0;
    char c = '\0';
    int data[100];
    int left = 0;
    int right = 0;
    int middle = 0;
    int tag = 0;
    int index = 0;

    while(scanf("%d",&data[i]) == 1)
    {
        i++;
        len++;

        c = getchar();
        if(c == '\n')
            break;
    }

    scanf("%d",&tag);

//    for(i=0; i<len; i++)
//    {
//        printf("%d ",data[i]);
//    }
// printf("%d \n",tag);

    right = len-1;
    middle = (left+right)/2;

    while(left<right)
    {
        if(data[middle]>tag)
        {
            right = middle-1;
        }
        else
        {
            left = middle+1;
        }

        if(left == right)
        {
            index = left+2;
            break;
        }
        middle  = (left+right)/2;

    }

    printf("%d",index);
}
相关推荐
杨凯凡14 小时前
【016】集合框架总览:List/Set/Map 与线程安全
java·数据结构·list
qeen8714 小时前
【算法笔记】前缀和经典题目解析
c语言·c++·笔记·学习·算法
Predestination王瀞潞14 小时前
Java EE3-我独自整合(第六章:Spring AOP 工作流程与切入点表达式)
java·spring·java-ee
Je1lyfish15 小时前
Haskell 初探
开发语言·笔记·算法·rust·lisp·抽象代数
景庆19715 小时前
vscode启动springBoot项目配置,激活环境
java·开发语言·vscode
小则又沐风a15 小时前
Linux使用指南和基础指令(1)
java·linux·运维
自我意识的多元宇宙15 小时前
二叉树的遍历和线索二叉树--先序二叉树和后续二叉树
数据结构
im_AMBER15 小时前
Leetcode 159 无重复字符的最长子串 | 长度最小的子数组
javascript·数据结构·学习·算法·leetcode
三千星15 小时前
Java开发者转型AI工程化Week 2:从核心能力到生产就绪
java·ai编程
亦暖筑序15 小时前
让 AI 客服真能用的 3 个模块:情绪感知 + 意图识别 + Agent 工具链
java·人工智能·后端