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整数探究的更多相关文章

  1. 找出数组中出现奇数次的元素<异或的应用>

    点击打开链接:百度面试题之找出数组中之出现一次的两个数(异或的巧妙应用) 题目描述|:给定一个包含n个整数的数组a,其中只有一个整数出现奇数次,其他整数都出现偶数次,请找出这个整数 使用异或操作,因为 ...

  2. 面试题:如何在不使用临时变量temp的情况下交换两个整数的值?

    利用一个小技巧,一个整数a在异或另一个整数b两次以后所得的值还是整数a. 具体的过程我们可以自己找两个整数以二进制的形式自己在纸上画一下他们的异或过程.(异或的运算符号为"^") ...

  3. C/C++ 笔试题

    /////转自http://blog.csdn.net/suxinpingtao51/article/details/8015147#userconsent# 微软亚洲技术中心的面试题!!! 1.进程 ...

  4. C/C++笔试题(很多)

    微软亚洲技术中心的面试题!!! .进程和线程的差别. 线程是指进程内的一个执行单元,也是进程内的可调度实体. 与进程的区别: (1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位 (2 ...

  5. (C++) 基本面试题(整理)

    1.new.delete.malloc.free关系 new/delete是C++的运算符.new 调用构造函数用于动态申请内存,delete调用对象的析构函数,用于释放内存. malloc与free ...

  6. C++面试宝典2011版

    1.new.delete.malloc.free关系 delete会调用对象的析构函数,和new相应free仅仅会释放内存,new调用构造函数.malloc与free是C++/C语言的标准库函数,ne ...

  7. 《Java学习笔记JDK8》学习总结

    chapter 6   继承与多态 6.1何谓继承 1.继承的定义:继承就是避免多个类间重复定义共同行为. 2.总结:教材中通过设计一款RPG游戏的部分代码向我们展示了“重复”程序代码的弊端,为了改进 ...

  8. C++笔试题目大全(笔试宝典)(不断完善中)

    1.new . delete . malloc . free 关系 delete 会调用对象的析构函数 , 和 new 对应 free 只会释放内存, new 调用构造函数. malloc 与 fre ...

  9. java程序设计之完数

    题目:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程 找出1000以内的所有完数. 解题过程也很简单: public class wanshu { ...

随机推荐

  1. Android &quot;QR二维码扫描&quot;

    支持灯 扫描结果 支持 抄.分享.浏览打开(超链接) 自己主动保存扫描记录 划删除 和源代码 git: http://git.oschina.net/892642257/QRCode csdn(0分) ...

  2. 只显示年月的js时间控件 纯手写

    <style> #date { text-align: center; } .td { cursor: pointer; } </style> <script> f ...

  3. 欧几里德欧几里德原理和扩展的原则,(Euclidean Theory and Extended Euclidean Theory)学习笔记

    题记:这是我第四次审查扩展欧几里德原理,由于不经常使用.当你想使用,可以不记得细节,经常检查信息,所以,简单地梳理这一原则和扩展欧几里德的原则,以博客存档以备查用. 一个.欧几里德原理 欧几里德原理( ...

  4. 转载:Eclipse+Spket插件+ExtJs4修改版提供代码提示功能[图]

    转载:Eclipse+Spket插件+ExtJs4修改版提供代码提示功能[图] ExtJs是一种主要用于创建前端用户界面,是一个基本与后台技术无关的前端ajax框架.功能丰富,无人能出其右.无论是界面 ...

  5. 解决方案命名空间“System.Web.Mvc”中不存在类型或命名空间名称“Ajax”(是否缺少程序集引用?)

    首先对System.Web.Mvc这个dll文件重新引用本地的,添加引用,搜索mvc就可以出来,选择相应的版本.如果还不能正常运行, 然后右键打开这个项目引用System.Web.Mvc, 将复制本地 ...

  6. MySQL的备份与还原

    原文:MySQL的备份与还原 MySQL备份和还原,都是利用mysqldump.mysql和source命令来完成的. 1.Win32下MySQL的备份与还原 1.1 备份 开始菜单 | 运行 | c ...

  7. ios基金会-XCode温馨提示

    (一个)代号规格pragma mark 1.定义 #pragma 开头的代码是一条编译器指令,是一个特定于程序或编译器的指令. 不一定适用于其他编译器或其他环境.假设编译器不能识别该指令.则会将其忽略 ...

  8. adb概览及协议参考

    原文:https://github.com/android/platform_system_core/blob/master/adb/OVERVIEW.TXT) Implementation note ...

  9. HDU 1983 BFS&amp;&amp;DFS

    大多数刚需封锁4区域可以,DFS地区封锁.BFS无论是通过 #include "stdio.h" #include "string.h" #include &q ...

  10. CORS(跨域资源共享)跨域问题及解决

    当使用ajax跨域请求时,浏览器报错:XmlHttpRequest error: Origin null is not allowed by Access-Control-Allow-Origin.肯 ...