void Calculate(int a)
{
int pa = a;
int count = ;
int b[] = {}; //将pa按位存储到数组b
while(pa > )
{
b[count++] = pa%;
pa = pa/;
}
bool flag = true; //是否有重复数
bool carryFlag = false; //是否产生进位 //从高位开始判断是否有重复数
int i,j,k;
count--;
for(i=count;i>;i--)
{
if(b[i] == b[i-])
{
flag = false;
b[i-]++; //有可能产生进位
if(b[i-]>)
carryFlag = true;
break;
}
} if(!flag) //如果存在重复位
{
int c = ;
//将低位重复数后面的数都变成0101....
for(j = i-;j>;j--)
{
b[j-] = c;
c = (c == ? :);
} //处理进位
if(carryFlag)
{
int carry = ;
for(j = i-;j<=count + ;j++)
{
b[j] = b[j] + carry;
if(b[j] >= )
{
carry = ;
b[j] = b[j] - ;
}
}
}
pa = ;
for(i = (count= ? count + :count);i >=;i--)
{
pa = pa * + b[i];
}
cout<<"the min no repeat number: "<<pa<<endl;
}
else
{
cout<<"the min no repeat number: "<<a<<endl;
return;
}
} 输入两个很大正数,输出它们的乘积
void Multiply(const char *a,const char *b)
{
assert(a!=NULL && b!=NULL);
int len_a = strlen(a);
int len_b = strlen(b);
int *c = new int[len_a+len_b];
memset(c,,sizeof(int) *(len_a+len_b));
for(int i=;i<len_a;i++)
{
for(int j=;j<len_b;j++)
{
c[i+j+] += (a[i]-'')*(b[j]-'');
}
}
for(int i=len_a+len_b-;i>;i--)
{
if(c[i]>=)
{
int carry = c[i]/;
c[i-] = c[i-] + carry;
c[i] = c[i] % ;
}
}
char *d = new char[len_a + len_b];
int i=;
while(c[i] == ) ++i;
int j;
for(j=;i<len_a+len_b;j++,i++)
{
d[j] = c[i] + '';
}
d[j] = '\0';
for(int i=;i<len_a+len_b;i++)
cout<<d[i];
cout<<endl;
}

比n大的最小不重复数的更多相关文章

  1. 对Alexia(minmin)网友代码的评论及对“求比指定数大且最小的‘不重复数’问题”代码的改进

    应Alexia(minmin)网友之邀,到她的博客上看了一下她的关于“求比指定数大且最小的‘不重复数’问题”的代码(百度2014研发类校园招聘笔试题解答),并在评论中粗略地发表了点意见. 由于感觉有些 ...

  2. 评playerc网友的"求比指定数大且最小的“不重复数”问题"

    问题见:对Alexia(minmin)网友代码的评论及对“求比指定数大且最小的‘不重复数’问题”代码的改进 .算法:求比指定数大且最小的“不重复数”问题的高效实现 . playerc网友的代码如下(求 ...

  3. [Swift]LeetCode744. 寻找比目标字母大的最小字母 | Find Smallest Letter Greater Than Target

    Given a list of sorted characters letterscontaining only lowercase letters, and given a target lette ...

  4. C#版(击败100.00%的提交) - Leetcode 744. 寻找比目标字母大的最小字母 - 题解

    C#版 - Leetcode 744. 寻找比目标字母大的最小字母 - 题解 744.Find Smallest Letter Greater Than Target 在线提交: https://le ...

  5. Leetcode之二分法专题-744. 寻找比目标字母大的最小字母(Find Smallest Letter Greater Than Target)

    Leetcode之二分法专题-744. 寻找比目标字母大的最小字母(Find Smallest Letter Greater Than Target) 给定一个只包含小写字母的有序数组letters  ...

  6. LeetCode 744. Find Smallest Letter Greater Than Target (寻找比目标字母大的最小字母)

    题目标签:Binary Search 题目给了我们一组字母,让我们找出比 target 大的最小的那个字母. 利用 binary search,如果mid 比 target 小,或者等于,那么移到右半 ...

  7. Leetcode744.Find Smallest Letter Greater Than Target寻找比目标字母大的最小字母

    给定一个只包含小写字母的有序数组letters 和一个目标字母 target,寻找有序数组里面比目标字母大的最小字母. 数组里字母的顺序是循环的.举个例子,如果目标字母target = 'z' 并且有 ...

  8. Java实现 LeetCode 744 寻找比目标字母大的最小字母(二分法)

    744. 寻找比目标字母大的最小字母 给定一个只包含小写字母的有序数组letters 和一个目标字母 target,寻找有序数组里面比目标字母大的最小字母. 在比较时,数组里字母的是循环有序的.举个例 ...

  9. C#LeetCode刷题之#744-寻找比目标字母大的最小字母(Find Smallest Letter Greater Than Target)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/4001 访问. 给定一个只包含小写字母的有序数组letters 和 ...

随机推荐

  1. error: &#39;for&#39; loop initial declarations are only allowed in C99 mode

    error: 'for' loop initial declarations are only allowed in C99 mode 使用gcc编译代码是报出 error: 'for' loop i ...

  2. LinearLayout (线性布局)的分析

    android提供了5中布局,线性布局,相对布局,帧布局.表格布局和绝对布局 线性和相对布局用的是最多的 以下要说的是线性布局 提到线性布局 一定要记住.它里面的全部组件一定不会重叠的, 切不会换行. ...

  3. 软件project—思考项目开发那些事(一)

    阅读文件夹: 1.背景 2.项目管理,质量.度量.进度 3.软件开发是一种设计活动而不是建筑活动 4.高速开发(简单的系统结构与复杂的业务模型) 5.技术人员的业务理解与产品经理的业务理解的终于业务模 ...

  4. Linux/Android多点触摸协议【转】

    本文转载自: 链接点击打开链接 关于Linux多点触摸协议大家可以参考kernel中的文档:https://www.kernel.org/doc/Documentation/input/multi-t ...

  5. css list menu

    选择让page和folder都显示出来

  6. bzoj 5127 数据校验

    题目大意: 一个数列a 对于 a 的一个区间 [l, r],若对于该区间 [l, r] 内的任意一个非空连续子区间,该子区间内出现过的数值在整数上值域连续,则称 [l, r]为合法区间 m次询问  每 ...

  7. 洛谷 P1498 南蛮图腾 —— 模拟

    题目:https://www.luogu.org/problemnew/show/P1498 大约一年前该做的题...现在来填一下坑: 然而不怎么会模拟!还滚去看TJ了: 就是翻倍复制: \ 这个符号 ...

  8. 【已解决】Makefile执行过程中出错:make: *** No rule to make target ` ‘, needed by xxx. Stop(转载)

    转自: http://www.crifan.com/makefile_error_make_no_rule_to_make_target_needed_by_stop/ [问题] 有个已有的Makef ...

  9. PCB Genesis 无需启动Xmanager图形窗口运行脚本 实现方法

    从事PCB工程行业的都知道,启动Genesis需2个exe程序(Xmanager.exe与get.exe)需一起启动才可以打开我们熟悉的软件, 而Xmanager是图形窗口是给用户UI交互使用的,如果 ...

  10. codevs3327选择数字(单调队列优化)

    3327 选择数字  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 钻石 Diamond     题目描述 Description 给定一行n个非负整数a[1]..a[n].现 ...