[洛谷] P1467 循环数 Runaround Numbers_AAA_Ljw的博客-程序员宅基地

题目

题目大意

本题循环数概念:你从最左边的数字开始向右数最左边这个数(如果数到了最右边就回到最左边),你会停止在另一个新的数字(如果停在一个相同的数字上,这个数就不是循环数)

给你一个数字 M (在1到9位之间), 找出第一个比 M大的循环数

题目解析

是一道很基础的题,模拟就可以了

先将数字拆分为数组

只需要每位数向右数当前的数个位置后的,不重复且不循环即可

代码

#include<bits/stdc++.h>
using namespace std;
int n,t,num,pos;
int a[15],b[15];
bool flag[15],pd;
int main()
{
 cin>>n;
 for(int i=n+1;i<=999999999;i++)//因为最多只有9位数字,循环到这即可 
 {
   memset(flag,0,sizeof(flag));
   num=pd=0;
   t=i;
   while(t>0)
   {
    a[++num]=t%10;
    if(flag[t%10]||t%10==0)//判断该数是否有0或者重复的数字 
    {
      pd=1;
      break;
    }
    flag[t%10]=1;
    t/=10;
   }
   for(int j=1;j<=num;j++)
    b[j]=a[num-j+1];
   if(pd) continue;
   memset(flag,0,sizeof(flag));
   pos=1;
   for(int j=1;j<=num;j++)
    if(flag[(pos+b[pos])%num])//判断该位数往后数之后是否之前到达过 
    {
      pd=1;
      break;
    }
    else
    {
      flag[(pos+b[pos])%num]=1;//位置标记为1 
      pos=(pos+b[pos])%num;//更新位置 
      if(pos==0) pos=num;
    }
   if(!pd)
   {
    cout<<i;
    break;
   }
 }
}
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_43909855/article/details/88069007

智能推荐

linux下执行jar包,关闭窗口也不中断_Zzzz_zzzz_zz的博客-程序员宅基地_怎么启动jar包后关闭不断掉

要运行java的项目需要先将项目打包成war包或者jar包,打包成war包需要将war包部署到tomcat服务器上才能运行。而打包成jar包可以直接使用java命令执行。在linux系统中运行jar包主要有以下几种方式。一、java -jar XXX.jar这是最基本的jar包执行方式,但是当我们用ctrl+c中断或者关闭窗口时,程序也会中断执行。二、java -jar XXX.jar &amp;&amp;代表在后台运行,使用ctrl+c不会中断程序的运行,但是关闭窗口会中断程序的运行。三、no

php连hiveservice2,hiveServer2服务端安装_不过如此lee的博客-程序员宅基地

本文假设hive已经做了基础安装,基础配置参考《Hive安装》配置hive-site.xml启动HiveServer2还需要下面的设置hive.support.concurrencytruehive.zookeeper.quorume3basestorage1,e3basestorage2,e3basestorage3hive.zookeeper.client.port9501hive.zooke...

Koa2, thinkjs, CmsWing技术路线_火龙果研究院的博客-程序员宅基地

一、Koa2学习网站https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001434501628911140e1cb6ce7d42e5af81480f7ecd5802000代码https://github.com/sihongwang/learn-javascript...

Cocos2d-x 屏幕适配新解_chuanzhuchu0617的博客-程序员宅基地

http://blog.leafsoar.com/archives/2013/05-10.html 为了适应移动终端的各种分辨率大小,各种屏幕宽高比,在 cocos2d-x(当前稳定版:2.0.4) 中,提供了相应的解决方案,以方便我们在设计游戏时,能够更好的适应不同的环境。 ...

tensorflow 2.X官网、keras官网介绍_条件漫步的博客-程序员宅基地_tensorflow2.x官方文档

@创建于:[email protected]修改于:2022.03.26文章目录1、官网1.1 查看版本1.2 查看keras1.3 Classify text with BERT2、keras1、官网tensorflow官网:https://tensorflow.google.cn1.1 查看版本查看版本发布情况:API–Versionshttps://tensorflow.google.cn/versions1.2 查看keras点击r2.6 – keras(搜索下)或者在左侧导航栏查找h

bootstrap 圆形按钮_张高伟的博客-程序员宅基地_bootstrap圆形按钮

&amp;lt;button type=&quot;button&quot; class=&quot;btn btn-default btn-circle&quot;&amp;gt;&amp;lt;i class=&quot;glyphicon glyphicon-ok&quot;&amp;gt;&amp;lt;/i&amp;gt;&amp;lt;/button&amp;gt;&amp;lt;button type=&quot;button&quot; class=&quot;btn btn-primary

随便推点

数学在计算机科学上的应用文献,计算机科学技术在数学中应用浅析_独角兽邹教授的博客-程序员宅基地

摘 要:人类社会文明的进步与发展过程中,数学在社会各领域中的应用越来越广泛,作用越来越大,已成为当代高新技术的重要组成部分。现代文明技术在计算机高度发展的今天,计算机科学技术在数学中应用越来越受到人们的关注。关键词:计算机科学技术;数学;应用在现代科学技术领域中,随着计算机的诞生和日益普及,教育教学也在不断发展,因此教育技术也有了翻天覆地的变化。计算机科学技术把教学媒体与传统教育相结合,不但深化教...

直播实录 | AlphaGo Zero是如何实现无师自通的?_PaperWeekly的博客-程序员宅基地

本文为 10 月 29 日,圣何塞州立大学——刘遥行的论文共读直播分享实录。Google DeepMind 团队在 Nature 上发表的最新论文,阐述了新版 AlphaGo 是如何从空白状态学起,不使用任何人类棋谱,通过自对弈强化学习,仅用 3 天训练时间就以 100:0 击败了上一版本的 AlphaGo,并用 21 天达到 AlphaGo Master 水平。A

【为项目添加日志】logging格式输出:日志发生的时间、模块、行号等信息格式输出_小慌慌的博客-程序员宅基地_logger格式化输出

前言一直想学习自动化测试,但是都没行动,业余时间学习零零碎碎并记录20210421。7、为项目添加日志logging模块介绍 logging格式输出 为项目添加log日志logging.basicConfig()函数说明logging模块的格式字符串实例1:import loggingmy_format='%(asctime)s-%(filename)s-%(module)s-%(lineno)d'# 输出的格式内容logging.basi..

mfc服务器发送信息失败10057,基于MFC的局域网聊天工具.doc_螺旋真理的博客-程序员宅基地

本科毕业论文基于MFC的局域网聊天工具Instant Messaging of LAN Based on MFC姓名:学号:院系:指导教师:摘要关键字:局域网;即时通讯;Win32;API;MFC;SOCKET;多线程AbstractKeywords: LAN; Instant Messaging(IM); MutiThread; Win32; API; MFC; SOCKET目录第一章 引言- ...

Django 定义属性总结_louis_bupt的博客-程序员宅基地

本文从网上搜集了一些 Django 定义属性的知识并进行整理,大家可以及时收藏方便随时查看。内容包括概述、库、逻辑删除、字段类型、字段选项、关系

oracle指定列为主键,【ORACLE】组合主键的某一列可以为NULL吗?_勤婧知浩的博客-程序员宅基地

(一)主键的定义可以唯一标识一行数据,主键由一列或多列组成。这些列要求非空且唯一。(二)测试--创建一个表,并设置一个组合主键drop table TEST_CON;create table TEST_CON(id int,name varchar2(20),description varchar2(100));alter table TEST_CON add constraint TEST_CO...

推荐文章

热门文章

相关标签