题解 | #序列中删除指定数字#

序列中删除指定数字

http://www.nowcoder.com/practice/7bbcdd2177a445a9b66da79512b32dd7

int main() {
    int n;
    scanf("%d", &n);
    int m[n + 1];
    for (int i = 0; i < n + 1; i++) {
        scanf("%d ", &m[i]);
    }
    for (int j = 0; j < n + 1; j++) {  //数组内寻找需要删除的数
        if (m[j] == m[n]) {
            for (int k = j + 1; k < n + 1; k++) {
                m[k - 1] = m[k];  //将后一位值覆盖至删除位,达成删除效果
            }
            n--;  //删除后总长度减1
            j--;  //防止有连续重复整数,重新判断一遍删除位的数
        }
    }
    for (int val = 0; val < n + 1; val++) {  //输出
        printf("%d ", m[val]);
    }
    return 0;
}
全部评论
插言
点赞 回复 分享
发布于 2023-07-24 23:47 辽宁

相关推荐

11-23 17:35
已编辑
济宁学院 Java
不想做程序员:面试官:蓝桥杯三等奖?你多去两次厕所都能拿二等吧
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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