题解 | #有序序列插入一个整数#

有序序列插入一个整数

https://www.nowcoder.com/practice/444e87f938464906a1649cff236b102b

#include <stdio.h>

int main() {
    int n = 0;
    scanf("%d", &n);
    int arr[100] = {0};
    int arr1[100] = {0};
    int left = 0;
    int right = n - 1;
    int i = 0;
    for (i = 0; i < n; i++) 
    {
        scanf("%d", &arr[i]);
    }
    int cr = 0;
    scanf("%d", &cr);
    if (arr[right] < cr) 
    {
        for (i = 0; i < n; i++) 
        {
            arr1[i] = arr[i];
        }
        arr1[n] = cr;
        int j = 0;
        for (j = 0; j < n + 1; j++) 
        {
            printf("%d ", arr1[j]);
        }
    } 
    else 
    {
        while (arr[left] < cr) 
        {
            left++;
        }
        for (i = 0; i < left; i++) 
        {
            arr1[i] = arr[i];
        }
        arr1[left] = cr;
        for (i = left + 1; i <= n; i++) 
        {
            arr1[i] = arr[i-1];
        }
        for (i = 0; i < n + 1; i++) 
        {
            printf("%d ", arr1[i]);
        }
    }
    return 0;
}

全部评论

相关推荐

渴望wlb的牛油果很...:直说卡第一学历不就行了 非得拐弯抹角
点赞 评论 收藏
分享
10-10 16:30
济宁学院 Java
一表renzha:面试官:蓝桥杯三等奖?你多去两次厕所都能拿二等吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务