蓝桥杯练习系统(算法训练)ALGO-970 数组移动

news/2024/4/28 19:03:50

资源限制

内存限制:256.0MB   C/C++时间限制:1.0s   Java时间限制:3.0s   Python时间限制:5.0s

问题描述

  初始数组A[N]中为1,2,..,N,N个数字,现要进行M次操作,每次操作给定一个数字i,记其在数组中的位置为Bi,将A[1]..A[Bi]移到数组末尾。

输入格式

  输入的第一行包含两个整数N,M。接下来M行,每行一个正整数,表示给定的数字i。

输出格式

  一行,输出M次操作后的A数组。

样例输入

5 2
3
2

样例输出

3 4 5 1 2

样例说明

  第一次操作后变为 4 5 1 2 3

  第二次操作后变为 3 4 5 1 2

数据规模和约定

  N<=10^5,M<=10^5

#include<iostream>
using namespace std;
const int N=10e5;
int a[N],a_l[N],a_r[N];
int main(){int n,m;cin>>n>>m;for(int i=1;i<=n;i++){a[i]=i;}while(m--){int x;cin>>x;int locate=1;for(int i=1;i<=n;i++){if(a[i]==x){locate=i;break;}}for(int i=1;i<=locate;i++){a_l[i]=a[i];}int cnt=1;for(int i=locate+1;i<=n;i++){a_r[cnt++]=a[i];}int cnt1=1,cnt2=1;for(int i=1;i<=n;i++){if(i<=n-locate){a[i]=a_r[cnt1++];}else{a[i]=a_l[cnt2++];}}}for(int i=1;i<=n;i++){cout<<a[i]<<" ";}cout<<endl;return 0;
}

思路:暴力。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.cpky.cn/p/10827.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】Linux安装软件---软件包管理器 yum

主页&#xff1a;醋溜马桶圈-CSDN博客 专栏&#xff1a;Linux_醋溜马桶圈的博客-CSDN博客 gitee&#xff1a;mnxcc (mnxcc) - Gitee.com 目录 1.Linux中安装软件 1.1 源代码安装 1.2 rpm包安装 1.3 yum安装 1.3.1 举例 1.3.2 图示yum下载安装 2.Linux系统的生态 如何选…

<爬虫部署,进阶Docker>----第二章 安装Docker

前言: 安装docker---本章是只针对windows的Docker! 如果你需要你就往下看,不需要 就换频道~ 正文: 1.安装Docker前配置 a.开启虚拟化功能(VT) -如果你电脑有这个 (虚拟化已启用) 直接跳过这一步; 如果没有,那你就去对照自己电脑开启虚拟化 ; 相关链接:win10打开虚拟化的…

解决electron打包vue-element-admin项目页面无法跳转的问题

解决electron打包vue-element-admin项目页面无法跳转的问题 说明之前通过这个教程已经打包成功&#xff0c;但是发现进行账号密码登录后页面无法跳转的问题。现在已经解决&#xff0c;所以记录一下。 1、检查路由模式是否为hash模式&#xff0c;如果不是改成hash模式。 new Ro…

汽车控制臂的拓扑优化-abaqus操作过程

前言 本示例详细讲解使用abaqus实现汽车控制臂的拓扑优化的操作过程。 本页讨论 前言一、创建模型1.创建几何部件2.定义材料属性3.创建装配实体4.创建分析步5.创建相互作用6.创建边界条件及载荷7.创建分析作业并提交分析8.可视化后处理 二、设置优化1.创建优化任务2.创建设计…

鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:Swiper)

滑块视图容器&#xff0c;提供子组件滑动轮播显示的能力。 说明&#xff1a; 该组件从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 子组件 可以包含子组件。 说明&#xff1a; 子组件类型&#xff1a;系统组件和自定义组…

学习vue3第五节(reactive 及其相关)

1、定义 reactive() 创建一个响应式代理对象&#xff0c;不同于ref()可以创建任意类型的数据&#xff0c;而reactive()只能是对象&#xff0c;会响应式的深层次解包任何属性&#xff0c;将其标注为响应式 响应式是基于ES6的proxy实现的代理对象&#xff0c;该proxy对象与原对象…