1047找环环&1503整数探究
1047就是判断一个数乘以他的位数1~n后是这个数转来转去的一个形式。主要就是大整数乘法
贴shi代码
#include<iostream>
#include<string>
#include<algorithm>
using namespace std; //test记录输入的数,back计算乘法之后的数
int test[];
int back[];
//判断当前的n,是否构成一个环
int iscyc(int N)
{
int i,j,k;
bool eq=;
//将test作为一个基础,进行比较
for(i=;i<N;i++)
{
if(back[i]==test[])
{
//当有一个地方和test[0]相等时,继续往下比较,判断是否是整个串都相等
//一定要注意这里的每次的初始化!!! 每次找到相同的就先设相等
eq=;
for(j=;j<N;j++)
{
if(back[(i+j)%N]!=test[j])
{
eq=;
break;
}
}
if(eq) return ;
}
}
return ;
} int main()
{
string onec;
int i,j,k,N,resid,value,flag=,pos;
while(cin>>onec)
{
pos=;
memset(test,,sizeof(test));
memset(back,,sizeof(back));
//还是将输入的string转换成int 数组 倒序
for(i=onec.size()-;i>=;i--)
{
back[pos]=onec[i]-'';
pos++;
} N=onec.size();
//计算对应n的乘法之后的值
resid=;
for(i=;i<N;i++)
{
resid=;
for(j=;j<N;j++)
{
value=back[j]*(i+)+resid;
test[j]=value%;
resid=value/;
} if() {int a=;}
else{
flag=iscyc(N);
//有一个不是,则不是
if(!flag)
{
cout<<onec<<" is not cyclic"<<endl;
break;
}
}
}
if(flag) cout<<onec<<" is cyclic"<<endl;
}
return ;
}
1503大水 就是大整数加法,直接代码
#include<iostream>
#include<string>
using namespace std;
int num[];
int sum[]; int main()
{
string onen;
int i,j,k,pos;
memset(sum,,sizeof(sum));
while(cin>>onen&&onen!="")
{
memset(num,,sizeof(num));
pos=;
for(i=onen.size()-;i>=;i--)
{
num[pos]=onen[i]-'';
pos++;
}
for(i=;i<pos;i++)
{
sum[i]+=num[i];
if(sum[i]>=)
{
sum[i+]++;
sum[i]=sum[i]%;
}
}
}
for(i=-;i>=;i--) if(sum[i]) break;
for(j=i;j>=;j--)
cout<<sum[j];
cout<<endl;
return ;
}
1047找环环&1503整数探究的更多相关文章
- 找出数组中出现奇数次的元素<异或的应用>
点击打开链接:百度面试题之找出数组中之出现一次的两个数(异或的巧妙应用) 题目描述|:给定一个包含n个整数的数组a,其中只有一个整数出现奇数次,其他整数都出现偶数次,请找出这个整数 使用异或操作,因为 ...
- 面试题:如何在不使用临时变量temp的情况下交换两个整数的值?
利用一个小技巧,一个整数a在异或另一个整数b两次以后所得的值还是整数a. 具体的过程我们可以自己找两个整数以二进制的形式自己在纸上画一下他们的异或过程.(异或的运算符号为"^") ...
- C/C++ 笔试题
/////转自http://blog.csdn.net/suxinpingtao51/article/details/8015147#userconsent# 微软亚洲技术中心的面试题!!! 1.进程 ...
- C/C++笔试题(很多)
微软亚洲技术中心的面试题!!! .进程和线程的差别. 线程是指进程内的一个执行单元,也是进程内的可调度实体. 与进程的区别: (1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位 (2 ...
- (C++) 基本面试题(整理)
1.new.delete.malloc.free关系 new/delete是C++的运算符.new 调用构造函数用于动态申请内存,delete调用对象的析构函数,用于释放内存. malloc与free ...
- C++面试宝典2011版
1.new.delete.malloc.free关系 delete会调用对象的析构函数,和new相应free仅仅会释放内存,new调用构造函数.malloc与free是C++/C语言的标准库函数,ne ...
- 《Java学习笔记JDK8》学习总结
chapter 6 继承与多态 6.1何谓继承 1.继承的定义:继承就是避免多个类间重复定义共同行为. 2.总结:教材中通过设计一款RPG游戏的部分代码向我们展示了“重复”程序代码的弊端,为了改进 ...
- C++笔试题目大全(笔试宝典)(不断完善中)
1.new . delete . malloc . free 关系 delete 会调用对象的析构函数 , 和 new 对应 free 只会释放内存, new 调用构造函数. malloc 与 fre ...
- java程序设计之完数
题目:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程 找出1000以内的所有完数. 解题过程也很简单: public class wanshu { ...
随机推荐
- BZOJ 1004 HNOI2008 Cards Burnside引理
标题效果:特定n张卡m换人,编号寻求等价类 数据保证这m换人加上置换群置换后本身构成 BZOJ坑爹0.0 条件不那么重要出来尼玛怎么做 Burnside引理--昨晚为了做这题硬啃了一晚上白书0.0 都 ...
- flex builder 4.7 ios 该溶液无法找到设备
行政建议,没有设备 1) 视图itunes 该服务正在启动(Bonjour服务).测试..... .即使没有这样的假设 2)"D:\Program Files\Adobe\Adobe Fla ...
- SVN提交忽略*.class、.classpath、.mymetadata、.project、.settings、.myeclipse和其他非版本控制文件
1.忽略*.class 在TortoiseSVN -->setting(设定)--规设置 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHVrZTY ...
- 算法 & 分析 (收集)
算法一:快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法.在平均状况下,排序 n 个项目要Ο(n log n)次比较.在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见.事实上,快速排序通 ...
- hdu 4893 Wow! Such Sequence!
http://acm.hdu.edu.cn/showproblem.php?pid=4893 三种操作: 1 k d - "add" 2 l r - "query sum ...
- Swift入门教程:基本语法(一)
简介: 什么是S ...
- installshield 32位打包和64位打包的注意事项
原文:installshield 32位打包和64位打包的注意事项 32/64位问题要把握几点:1. 明确你的产品是否需要区分32/64位2. 明确你的产品中是否有32/64位的服务注册3. 了解In ...
- 使用Dropbox+Justwriting+Markdown建立个人博客
使用Dropbox+Justwriting+Markdown建立个人博客,让您真正体会到什么是"简化". 您的博客所有日志存储在您的PC上.即使有一天你的server主机挂了,你的 ...
- C++ - 模板类模板成员函数(member function template)隐式处理(implicit)变化
模板类模板成员函数(member function template)隐式处理(implicit)变化 本文地址: http://blog.csdn.net/caroline_wendy/articl ...
- [译]Java垃圾回收是如何工作的
说明:这篇文章来翻译来自于Javapapers 的How Java Garbage Collection Works 这部分教程是为了理解Java垃圾回收的基础以及它是如何工作的.这是垃圾回收系列教程 ...