国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

6174

2019-11-11 01:48:50
字體:
來源:轉載
供稿:網友

記錄下來題目及代碼算是學習的過程以后方面查閱 題目介紹:6174猜想 ,1955年,卡普耶卡(D.R.KaPRekar)研究了對四位數的一種變換:任給出四位數k0,用它的四個數字由大到小重新排列成一個四位數m,再減去它的反序數rev(m),得出數k1=m-rev(m),然后,繼續(xù)對k1重復上述變換,得數k2.如此進行下去,卡普耶卡發(fā)現,無論k0是多大的四位數, 只要四個數字不全相同,最多進行7次上述變換,就會出現四位數6174. 輸入一個n位數,操作輸出序列,直到出現循環(huán)(即新得到的數曾經得到過)。輸入保證在循環(huán)之前最多只會產生1000個整數。 輸入: 1234

輸出:

1234-->3087-->8352-->6174-->6174#include<iostream>#include<string.h>#include<algorithm>using namespace std;int cmp(int a, int b) { return a>b ? 1 : 0;}int serb(int *p, int b) { for (int i = 0; i<4; i++) { p[i] = b % 10; b /= 10; } return 0;}int bin(int *p) { int t = p[0]; for (int i = 1; i<4; i++) t = 10 *t + p[i]; return t;}int he(int b) { int p[4], q[4]; serb(p, b); serb(q, b); sort(p, p + 4, cmp); sort(q, q + 4); return bin(p) - bin(q);}intmain(void){ int a, sum[100]; memset(sum,0,sizeof(sum)); cin >> sum[0]; cout<<sum[0]<<"-->"; sum[1]=he(sum[0]);int i=1; for(;;){ sum[i]=he(sum[i-1]); cout<<sum[i]; int found=0; for(int j=0;j<i;j++) if(sum[j]==sum[i]){ found=1;break; } if(found)break; i++; cout<<"-->"; } return 0;}
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 攀枝花市| 个旧市| 博兴县| 威信县| 合川市| 忻州市| 曲松县| 鹤庆县| 黔江区| 峨眉山市| 开平市| 龙里县| 连平县| 湟源县| 梧州市| 金寨县| 深水埗区| 洱源县| 辽宁省| 巴塘县| 隆尧县| 沈丘县| 华池县| 顺平县| 杭锦后旗| 南江县| 东光县| 灌南县| 隆回县| 邵阳市| 舞钢市| 宁乡县| 石狮市| 永定县| 彰武县| 奇台县| 盐山县| 军事| 肇东市| 南康市| 安化县|