技术标签: noi题库 1.13编程基础之综合应用 C++ noi题库
总时间限制: 1000ms 内存限制: 65536kB
描述
若一个n位的数字串满足下述条件,则称其是循环数(cyclic):将这个数字串视为整数(可能带有前导0),并用任意一个 1 到 n 之间(包含1和n)的整数去乘它时, 会得到一个将原数字串首尾相接后,再在某处断开而得到的新数字串所对应的整数。例如,数字 142857 是循环数,因为:
142857 *1 = 142857
142857 *2 = 285714
142857 *3 = 428571
142857 *4 = 571428
142857 *5 = 714285
142857 *6 = 857142。
请写一个程序判断给定的数是否是循环数。
注意:在此题中,输入数字串允许带前导0,且前导0不能被忽略,例如“01”是两位数字串,而“1”是一位数字串。但将数字串转化为整数做乘法运算或比较运算时,可以忽略前导0。
输入
一行,一个长度在 2 到 60 位之间的数字串。
输出
一个整数,若输入的数字串是循环数,输出1,否则输出0。
样例输入
142857
样例输出
1
对于这道题目,我的思路是这样的:
用字符串st读入,然后将其一位一位地存到一个数组中,用高精度乘法(long long类型不够)做完后,再存到另一个字符串s中,然后将前一个字符串st首尾相接,用find函数在st中查找s,如果找不到,就输出“0”,并退出,找到了,就接着做。
源代码如下:
#include<bits/stdc++.h>//万能头文件
using namespace std;
int len,a[300]={
0},b[300]={
0},t=0,f;
string st,s;
int main()
{
cin>>st;
len=st.size();
for(int i=0;i<len;i++)
a[i]=st[i]-'0'; //将st一位一位存入数组a中
st=st+st;//将st首尾相接
for(int j=1;j<=len;j++)
{
for(int k=0;k<len;k++)
b[k]=a[k];//将a数组存入b中
for(int p=len-1;p>=0;p--){
b[p]=b[p]*j+t;
t=b[p]/10;
b[p]=b[p]%10;
}//高精度乘法
s="";//将字符串s置空
for(int q=0;q<len;q++)
s=s+(char)('0'+b[q]);//将b数组转换到字符串s中
f=st.find(s,0);
if(f==-1)//即st中没有s
{
cout<<'0';
return 0;
}//输入“0”并停止运行
}
cout<<'1';
return 0;
}
文章浏览阅读2.4k次,点赞6次,收藏19次。一、Python 安装一、Python 应用场景1.Web应用开发2.自动化运维3.科学计算4.桌面软件5.服务器软件6.游戏7.人工智能8.数据分析二、Python3 开发环境搭建1、Python2 在大多数Linux系统上都已经有集成好了 Python2 开发环境,不需要安装就可以执行Python代码了①.验证 Python2 环境是否搭建好:Ctrl + Alt + t 打开终端输入命令$ python②.退出 Python2 环境命令:exit() 或 Ctrl+_pio.write_image
文章浏览阅读2.8k次,点赞29次,收藏40次。因为它是开源的,避免使用J-Link的Clone提醒,以及不同质量的盗版ST-Link的各种问题,以及同时调试多个项目时需要多个不同型号的调试器。CubeIDE目前只支持ST-Link、J-Link, 我们需要一些操作才能让它支持CMSIS-DAP。使用CMSIS-DAP需要.cfg后缀的文件,一般使用ST-Link调试器不会生成此文件。新工程配置完成后,如下图,暂时是没有Debug资源的。保存后,Debug下方,出现了刚才保存的cfg文件。1、生成调试器的CFG文件。2、打开Debug配置。_cmsis-dap怎么用
文章浏览阅读8.8k次。输入设备、运算器、控制器、存储器、输出设备。冯.诺依曼计算机的工作原理,“存储程序控制”原理的基本内容:1、采用二进制形式表示数据和指令。2、将程序(数据和指令序列)预先存放在主存储器中(程序存储),使计算机在工作时能够自动高速地从存储器中取出指令,并加以执行(程序控制)。3、由运算器、控制器、存储器、输入设备、输出设备五大基本部件组成计算机硬件体系结构。扩展资料根据冯诺依曼体系结构构成的计算机,..._冯诺依曼计算机体系结构五大组成
文章浏览阅读1.1k次。 广域网(WAN)是一种覆盖较大范围的计算机网络,其涉及整个世界网络。通常 WAN 连接多重较小网络,如局域网(LAN)或区域网(MAN)。世界最流行的 WAN 是因特网。因特网内部的某些部分也属于广域网。广域网可以由私人拥有也可以向服务器供应商租用,其中包含公用网络(用户共享)。 为了保密性和安全通信,组织通常使用依靠于公共交换数据网络(PSDN)的虚拟专用网络(VPN)。在 _wan atm和sonet协议
文章浏览阅读5.6k次,点赞7次,收藏11次。OpenGL ES3.1使用计算着色器(Compute Shader)1.基本介绍OpenGL ES从3.1版本开始支持计算着色器 工作模型有全局工作组和本地工作组,全局工作组包含由三维的本地工作组组成,本地工作组也由三个维度组成。本地工作组三个维度大小分别为:local_size_x,local_..._opengl es计算着色器
文章浏览阅读353次。Python 是一门优雅而又不失实用的语言,它语法简单很容易学会,又具有极高的可读性和灵活性。在知乎上 Python 是受关注最多的编程语言。很遗憾在我初学的时候没有知乎这样的平台提供这么多的资源,甚至全靠自己摸索。虽然各类观点俯拾皆是,但是有时候却会让人迷失了方向。本次 Live 我将带来个人对 Python 开发工程师如何入门、提高和进阶的一些见解,希望通过我个人的工作经历、学习方法,给不同阶..._怎么才能做到会写python程序
文章浏览阅读301次。a-checkbox 超出换行_a-checkbox-group 自动换行
文章浏览阅读403次,点赞4次,收藏4次。先说短连接, 短连接是通讯双方有数据交互时就建立一个连接, 数据发送完成后,则断开此连接.长连接就是大家建立连接之后, 不主动断开. 双方互相发送数据, 发完了也不主动断开连接, 之后有需要发送的数据就继续通过这个连接发送.TCP连接在默认的情况下就是所谓的长连接, 也就是说连接双方都不主动关闭连接, 这个连接就应该一直存在.下面是辛苦给大家整理的学习路线本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录。
文章浏览阅读1.7w次,点赞3次,收藏13次。当x趋近于0时,sin(x)/x趋近于1,这是一个重要的极限。如果用Matlab绘制出函数图形,则一目了然。x=linspace(-0.01,0.01,1000);y=sin(x)./x;plot(x,y)图形:那么,当x趋近于正无穷时,函数极限又应该是多少呢?因为sin(x)是有界的,而1/x当x趋近于无穷大时极限为0,因此,根据定理:有界_matlab sinx/x
文章浏览阅读1.1k次,点赞5次,收藏12次。1 体系结构(1)主要成员base_local_planner::LocalPlannerUtil planner_util_; 用来存储运动控制参数以及costmap2d、tf等,会被传入dp_costmap_2d::Costmap2DROS* costmap_ros_;base_local_planner::OdometryHelperRos odom_helper_; 用来辅助获取o..._dwaplannerros
文章浏览阅读20次。风。风暴来临,扁舟破风。Cocos引擎中文站举办的游戏源码有奖征集活动将掀起最强风暴。藉此机会,各路游戏开发英豪摩拳擦掌,正欲一显身手,马到成功!峰。峰峦矗立,王者登峰。真正的游戏开发高手将与全国的开发者较量,直待夺取“最强”名号,会当凌绝顶,一览众山小,煮酒论英雄!锋。锋芒初露,剑走偏锋。谁说奇思妙想没有用,有才华的人不甘平庸。就算生活匆忙,工作繁重,但只要有一个机会,就应该不鸣则已,今日惊鸿!...
文章浏览阅读5.1k次,点赞9次,收藏89次。一、动力学基础概念基本动力学模型建模方法牛顿-欧拉法拉格朗日法连杆质量,连杆质心位置矢量,连杆质心惯性矩阵(通过动力学参数识别获得)二、牛顿-欧拉法运动外推:向外迭代计算连杆的角速度、角加速度和线加速度力外推:计算作用在连杆质心上的惯性力和力矩力矩内推:向内迭代计算关节力矩2.1 运动向外迭代2.1.1 刚体线速度和角速度线速度坐标系{A}为固定,坐标系{B}固连在刚体上。2.1.2 连杆速度连杆..._matlab机械臂惯性矩