题目描述:

任意一个5位数,比如:34256,把它的各位数字打乱,重新排列,可以得到一个最大的数:65432,一个最小的数23456。求这两个数字的差,得:41976,把这个数字再次重复上述过程(如果不足5位,则前边补0)。如此往复,数字会落入某个循环圈(称为数字黑洞)。

比如,刚才的数字会落入:[82962, 75933, 63954, 61974] 这个循环圈。

请编写程序,找到5位数所有可能的循环圈,并输出,每个循环圈占1行。其中5位数全都相同则循环圈为 [0],这个可以不考虑。

循环圈的输出格式仿照:

[82962, 75933, 63954, 61974]

其中数字的先后顺序可以不考虑。

略蛋疼- -

好吧。。。好久没写C++了

//

// main.cpp

// buleBirdgeGamesTest

//

// Created by kino on 14-3-17.

//

//

#include #include using namespace std;

#define SWAP(a,b) int temp = a;a = b;b = temp;

#define NOTFOUND -1

/**

* 冒泡排序

*

* @param arr 数组

* @param len 长度

* @param isDesc 是否降序

*/

void bubbleSort(int arr[], int len, bool isDesc){

for (int i = 0; i < len; i++) {

for (int j = 0; j < len - i - 1; j++) {

if (isDesc) {

if (arr[j]>arr[j+1]) {

SWAP(arr[j],arr[j+1])

}

}else{

if (arr[j]array, int a){

vector::iterator it ;

int i = 0;

for (it = array.begin(); it != array.end(); it++,i++) {

if (*it == a) {

return i;

}

}

return NOTFOUND;

}

/**

* 查找一个元素是向量的向量中是否存在某数

*

* @return

*/

int isArrrayExist(vector> listArray, vectoraListArray){

vector>::iterator it ;

int number = aListArray[0];

for (it = listArray.begin(); it != listArray.end(); it++) {

if (isNumberExist((vector(*it)),number) != NOTFOUND) {

return 1;

}

}

return NOTFOUND;

}

/**

* 打印结果

*

* @param numArray

*/

void printResult(vector> numArray){

vector>::iterator it;

for (it = numArray.begin(); it!= numArray.end(); it++) {

vector::iterator itt;

cout <> numArray;

vectortempArr;

for (int i = 10000; i < 99999 ; i++) {

if (i % 11111 == 0) continue;

int next = i;

for (int j = 0 ; j < 50 ; j++) {

next = findNum(next);

int startIdx = isNumberExist(tempArr, next);

tempArr.push_back(next);

if (startIdx != NOTFOUND) {

vectorsnipArray;

for (int k = startIdx; k < tempArr.size() - 1; k++) {

snipArray.push_back(tempArr[k]);

}

if (isArrrayExist(numArray, snipArray) == NOTFOUND) {

numArray.push_back(snipArray);

}

break;

}

}

tempArr.clear();

}

printResult(numArray);

return 0;

}

java蓝桥杯数字黑洞_蓝桥杯题目练习之数字黑洞相关推荐

  1. Java语言strcmp函数用法_蓝桥杯 算法提高 11-1实现strcmp函数 (JAVA方法)

    蓝桥杯 算法提高 11-1实现strcmp函数 (JAVA方法) 首先这不是一个多难的题,但是网上的我没怎么找到有Java的代码,基本全都是c语言的,小编是个小白,如果有不对的地方请联系小编 问题描述 ...

  2. java蓝桥杯猜年龄_蓝桥杯-猜年龄-java

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...

  3. java计算乘地铁费用_蓝桥杯-地铁换乘

    为解决交通难题,某城市修建了若干条交错的地铁线路,线路名及其所属站名如stations.txt所示. 线1 苹果园 -. 四惠东 线2 西直门 车公庄 -. 建国门 线4 -. 其中第一行数据为地铁线 ...

  4. java. 三个人比赛怎么写_蓝桥杯——分组比赛(2017JavaB组第3题)

    分组比赛(17JavaB3) 9名运动员参加比赛,需要分3组进行预赛. 有哪些分组的方案呢? 标记运动员为 A,B,C,... I 下面的程序列出了所有的分组方法: ABC DEF GHI ABC D ...

  5. 蓝桥杯python青少年_蓝桥杯大赛青少年组省赛结果公布

    2020年7月,第十一届蓝桥杯大赛青少年组省赛结果公布.作为少儿编程教育行业的头部企业,编程猫再次发挥示范.引领作用,近90%的报名学员在选拔赛.省赛中获奖.其中,获得省赛一等奖的参赛学员占比高达23 ...

  6. 蓝桥杯评分标准_蓝桥杯比赛要求

    七.奖项设置及评选办法 7.1 省赛 1. 参赛选手奖 省赛每个组别设置一.二.三等奖,比例分别为 10% . 20% . 30% ,总比例为实际参赛人数 的 60% ,零分卷不得奖.省赛一等奖选手获 ...

  7. 蓝桥杯评分标准_蓝桥杯软件设计大赛自测评分标准

    第 1/1 页 2013 模拟赛自测评分标准 1. 结果填空题 得分或不得分,没有中间结果. 结果必须完全正确才能得分. 结果中含有引导或尾随的空白将被忽略,不扣分. 但,结果中含有中文空白字符或标点 ...

  8. 蓝桥杯评分标准_蓝桥杯软件个人赛校内选拔赛评分标准和选拔标准

    55271459,138******** )). 4. 竞赛中,所有的参赛同学使用同一套题目,在同一时间,按照统一评分规则进行比赛.此 次校内选拔赛共有 15 道编程题(其中 6 道基础题, 5 道进 ...

  9. java多线程正在旋转的_一个正在高速旋转的巨大黑洞:速度竟达到光速的一半!...

    一个超大质量黑洞最近吞噬天体留下的残骸让科学家们能够计算出这个怪物黑洞的旋转速度,计算结果令人难以置信. 研究小组成员说,这个被称为ASASSN-14li的巨大黑洞正在以至少50%的光速旋转. &qu ...

  10. excel复制数字乱码_仅在Excel中复制数字

    excel复制数字乱码 Someone emailed me recently, asking how to copy just the numbers, from a column that als ...

最新文章

  1. 无人机、IoT 设备都有漏洞?专访以色列老牌安全企业Check Point | 拟合
  2. 科技部:论文数量、影响因子不可与奖励奖金挂钩,网友:早就该治了
  3. springboot系列八、springboot整合kafka
  4. ZooKeeper安装配置
  5. pandas删除数据库 python_Python常见的科学计算库
  6. 一个小厂前端 Leader 如何筛选候选人?
  7. Java基础学习总结(50)——Java事务处理总结
  8. C#的百度地图开发(一)发起HTTP请求
  9. Visual C#中用WMI编写网络应用程序
  10. 字符串资源的内部格式
  11. win7 企业版MAK神key win7企业版激活码
  12. python md5加密字符串_Python使用MD5加密字符串示例
  13. 2台服务器只执行一台的定时任务(redisson)
  14. 人工智能的发展历史概览
  15. 苹果电子邮件怎么注册_电子邮件地址怎么写
  16. 四川托普计算机职业学校环境,四川四川托普计算机职业学校
  17. 如何在Fedora 上dnf安装Node.js
  18. 【ESP8266个人学习笔记】二、自动控制系统的输入输出信号
  19. html5跟随手指的小球,Android自定义圆形View实现小球跟随手指移动效果(详细介绍)...
  20. 2018-2019-2 《网络对抗技术》Exp7 网络欺诈防范 Week10 20165233

热门文章

  1. 彻底解决360安全卫士广告问题-终极解决方案(含360后台广告程序下载解决方案)
  2. 有营养的算法笔记(七)
  3. Nat. Med. :婴儿生命早期肠道病毒组和细菌组的动态
  4. 让 CXK 来教你实现游戏中的帧动画(上)
  5. 九月英语--不同以往的感觉
  6. python输入数字输出月份英文缩写_英文和数字表示的月份,如何在 Excel 中相互转换?...
  7. 电影海报的多标签分类
  8. php对联广告,对联广告
  9. 嵌入式三大职业发展方向
  10. html tooltips效果,html5tooltips.js – 一款轻量级的3D工具提示插件