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

首頁 > 學院 > 開發設計 > 正文

6174

2019-11-11 02:59:40
字體:
來源:轉載
供稿:網友

記錄下來題目及代碼算是學習的過程以后方面查閱 題目介紹:6174猜想 ,1955年,卡普耶卡(D.R.KaPRekar)研究了對四位數的一種變換:任給出四位數k0,用它的四個數字由大到小重新排列成一個四位數m,再減去它的反序數rev(m),得出數k1=m-rev(m),然后,繼續對k1重復上述變換,得數k2.如此進行下去,卡普耶卡發現,無論k0是多大的四位數, 只要四個數字不全相同,最多進行7次上述變換,就會出現四位數6174. 輸入一個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;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洪雅县| 江华| 桃园市| 长兴县| 永定县| 广汉市| 静宁县| 巨鹿县| 天津市| 石屏县| 广昌县| 垦利县| 清苑县| 通江县| 海伦市| 阿拉尔市| 安西县| 金山区| 高州市| 榆树市| 安顺市| 和平区| 新闻| 东台市| 厦门市| 内黄县| 潮安县| 云安县| 娄底市| 芒康县| 哈尔滨市| 观塘区| 古丈县| 林西县| 邮箱| 佛冈县| 西吉县| 昌宁县| 任丘市| 平阳县| 永州市|