蓝桥杯 彩灯与任务

题目描述

输入样例

 5 5

5 4 3 3 9

R 1

C 4

R 5

A 3

R 2

输出样例

5

3

3

思路

       第一眼读不懂旋转是啥意思,根据样例连蒙带猜猜出来,其实就是把整个数组中的挪动几个位置。也很自然的按照题意写出来如下代码:

#include <iostream>
using namespace std;
int N;
int A[1000];
int B[1000];
void rotate(int x){
  for(int i=0;i<N;i++){
    B[(i+x)%N]=A[i];
  }
   for(int i=0;i<N;i++){
    A[i]=B[i];
  }
}
int main()
{
  int M;
  cin>>N>>M;
  for(int i=0;i<N;i++){
    cin>>A[i];
  }
  char type;
  int num;
  int now = 0;
  while(M--){
    cin>>type>>num;
    if(type=='C'){ 
      rotate(N-num);
     }
    if(type=='A'){
        rotate(num);
    }
    if(type=='R'){
      cout<<A[(num-1)%N]<<endl;
    }
  }
  return 0;
}

正好有个拿过国一的大佬路过,他帮我改了,写出来如下代码 :

#include <iostream>
using namespace std;
int N;
int A[1000];
int B[1000];
// void rotate(int x){
//   for(int i=0;i<N;i++){
//     B[(i+x)%N]=A[i];
//   }
//    for(int i=0;i<N;i++){
//     A[i]=B[i];
//   }
// }
int main()
{
  int M;
  cin>>N>>M;
  for(int i=0;i<N;i++){
    cin>>A[i];
  }
  char type;
  int num;
  int now = 0;
  while(M--){
    cin>>type>>num;
    if(type=='C'){
      now -= num;
    }
    if(type=='A'){
      now += num;
    }
    if(type=='R'){
      now %= N;
      cout<<A[(num - 1 - now + N)%N]<<endl;
    }
  }
  return 0;
}

可以看到,只需要记录下偏移量,不需要真正的偏移。强!

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

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

相关文章

如果你正在学自动化测试,那么请你仔细看完这篇文章

接触了不少同行&#xff0c;由于他们之前一直做手工测试&#xff0c;现在很迫切希望做自动化测试&#xff0c;其中不乏工作5年以上的人。 本人从事软件自动化测试已经近5年&#xff0c;从server端到web端&#xff0c;从API到mobile&#xff0c;切身体会到自动化带来的好处与痛楚…

kylin集群负载均衡(kylin3,hbaseRIF问题)

hbase历险记 目录 hbase历险记 寻找问题 分析原因 解决方案 方案1&#xff08;资源问题、失败&#xff09; 方案2&#xff08;成功&#xff09; 寻找问题 不知道你是不是有这样的疑惑。我kylin是个单机&#xff0c;我使用的hbase是个集群&#xff0c;但内存全在某一台机…

高并发缓存问题分析以及分布式锁的实现

一,场景概述: 在高并发的环境下,比如淘宝,京东不定时的促销活动,大量的用户访问会导致数据库的性能下降,进而有可能数据库宕机从而不能产生正常的服务,一般一个系统最大的性能瓶颈&#xff0c;就是数据库的io操作,如果发生大量的io那么他的问题也会随之而来。从数据库入手也是…

Python基础知识:整理13 利用pyecharts生成折线图

首先需要安装第三方包pyecharts 1 基础折线图 # 导包&#xff0c;导入Line功能构建折线图对象 from pyecharts.charts import Line # 折线图 from pyecharts.options import TitleOpts # 标题 from pyecharts.options import LegendOpts # 图例 from pyecharts.options im…

CSAPP阅读笔记-程序的机器级表示

程序的机器级表示 计算机执行机器代码&#xff0c;用字节序列编码低级的操作&#xff0c;包括处理数据、管理内存、读写存储设备上的数据&#xff0c;以及利用网络通信。编译器基于编程语言的规则、目标机器的指令集和操作系统遵循的惯例&#xff0c;经过一系列的阶段生成机器…

微信小程序---如何创建分包

1.在项目根目录中&#xff0c;创建分包的根目录&#xff0c;名为subpkg&#xff0c;这个名字可以自己定义 2.在 pages.json 中&#xff0c;和 pages 节点平级的位置声明 subPackages 节点&#xff0c;用来定义分包相关的结构&#xff1a; 3.在分包目录&#xff0c;点击右键新建…

进程切换和是Linux2.6内核中进程调度的算法

正文开始前给大家推荐个网站&#xff0c;前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 进程切换 进程并发就需要做到进程切换&#xff0c;一个CPU一套寄存器但是需要运行的进程有很多…

发票系统对接诺诺平台

诺诺平台判断设备不在线&#xff0c;导致开票失败 代码方面优化&#xff1a;调用接口的时候&#xff1a;是否先调用在线状态检测接口&#xff0c;确认开票设备是在线的状态 &#xff0c;在调用诺诺平台&#xff0c;不在线直接拦截&#xff1b;例如&#xff1a;这个原理就类似于…

DIYgif表情包怎么做?gif表情包制作方法分享

Gif表情包是我们生活交流中必不可少的一种方式&#xff0c;能够表达自己的心情&#xff0c;也能够调节气氛。平时我们的gif表情包都是从网上下载或是别人发送的&#xff0c;那么我们怎么自己DIYgif表情包呢&#xff1f;这时候&#xff0c;用qq表情在线制作&#xff08;https://…

在IntelliJ IDEA中集成SSM项目

SSM项目&#xff1a;springMVC为控制器、spring 为事务层、 MyBatis 负责持久 首先看下集成后项目结构&#xff1a; 1、打开IntelliJ IDEA&#xff0c;点击 "File" -> "New" -> "Project"。 点击Finish&#xff0c;此时我们就已经创建了一…

图书信息管理系统

1.程序组成&#xff1a; 源文件&#xff1a;test.cpp&#xff0c;源.cpp 头文件&#xff1a;test.h 2.功能实现&#xff1a; 系统以菜单方式工作&#xff0c;图书信息录入功能&#xff0c;图书信息浏览功能&#xff0c;查询功能删除功能价格排序修改图书信息程序加密 &…

手机更换社保证照片教程来啦,速速查收!

&#x1f4cc;线上直接搞定很简单&#xff01; 没有申领社保卡的姐妹们可以自己申领&#xff01; 已有社保卡的姐妹可以先挂失然后再申领&#xff01; &#x1f64c;教程 线上更换社保证&#xff1a; 1️⃣打开「掌上12333」&#xff0c;找到电子社保卡 2️⃣点击社保卡申领&am…

关于影视字幕翻译哪个公司比较专业?

现如今&#xff0c;影视剧作为跨文化交流的重要桥梁&#xff0c;正日益受到中国观众的热爱。因此也催生了影视字幕翻译的需求。那么&#xff0c;如何做好影视作品字幕翻译&#xff0c;哪个公司在影视字幕英译中更为专业&#xff1f; 我们知道&#xff0c;字幕翻译是涉外影视作品…

接口测试用例设计 - 实战篇

一&#xff0e;接口测试流程 1&#xff0e;需求讨论 2&#xff0e;需求评审 3&#xff0e;场景设计 4&#xff0e;数据准备 5&#xff0e;执行 二&#xff0e;分析接口文档中哪些元素 1&#xff0e;接口名称 2&#xff0e;接口地址 3&#xff0e;支持格式 4&#xff0…

Spring IOC 源码分析

​ 什么是 IoC IoC &#xff08;Inversion of control &#xff09;控制反转。它是一种思想不是一个技术实现。描述的是&#xff1a;Java开发领域对象的创建以及管理的问题。 例如&#xff1a;现有类A依赖于类B。传统的开发方式 &#xff1a;往往是在类A中手动通过new关键字…

C++设计模式

目录 一.概念 1.设计模式概念 2.底层思维与抽象思维 &#xff08;1&#xff09;底层思维 &#xff08;2&#xff09;抽象思维 3.面向对象 4.软件设计复杂性 &#xff08;1&#xff09;软件设计复杂的根本原因 &#xff08;2&#xff09;解决复杂性的方法 ① 分解 ②…

C++ Webserver从零开始:基础知识(四)——I/O复用

目录 前言 select系统调用 poll系统调用 epoll系统调用 epoll_create epoll_ctl epoll_wait LT和ET模式 EPOLLONESHOT事件 epoll和select/poll的区别 事件集处理方式 实现原理和效率 其他区别 前言 在第三章中我们大概地讲解了什么是I/O复用&#xff0c;即&#xf…

低聚糖市场分析:预计2029年将达到26亿美元

低聚糖又名寡糖( oligosaccharide)或少糖类&#xff0c;是一种新型功能性糖源&#xff0c;低聚糖集营养、保健、食疗于一体&#xff0c;广泛应用于食品、保健品、饮料、医药、饲料添加剂等领域。 在我国由于低聚糖行业的技术飞速进步&#xff0c;收率和质量明显提高&#xff0…

React关于类组件ts使用

类组件中定义了两个接口的类型&#xff0c; 分别约束自身数据state对象 与父组件通过props传递进来的数据。 在父组件使用子组件 并传递参数&#xff1b;
最新文章