问题G:卡布列克常数
问题G:卡布列克常数
时间限制:1秒内存限制:128 MB
提交:489解决:288
[ 提交 ] [ 状态 ] [ 讨论版 ] [命题人:admin ]
题目描述
最近,小Q在数学兴趣课中了解了“卡布列克常数”卡布列克是一位数学家,他在研究数字时发现:任意一个不是用完全相同数字组成的四位数,如果对它们的每位数字重新排序,组成一个最大的数和一个最小的数,然后用最大数减去最小数,差不够四位数时补零,类推下去,最后将变成一个固定的数: 6174,这就是卡布列克常数。
例如:4321-1234 = 3087
8730-378 = 8352
8532-2358 = 6174
7641-1467 = 6174
......
小Q想,我能不能编程来验证呢?输入一个符合条件的四位数,然后验证运算过程。
输入
共1行,为任意一个不是用完全相同数字组成的四位数。
输出
变为卡布列克常数的运算过程,由若干行组成,每行是一个算式,不含空格。
样例输入
复制样例数据
样例输出
#include<stdio.h>
int lol(int n);
int node1(int p);//最大数
int node2(int op);//最小数
int main()
{int j,k,i,n;scanf("%d",&n);do{ if(lol(n)==1){n=n*1000;}else if(lol(n)==2){n=n*10;}else if(lol(n)==3){n=n*10;}j=node1(n);k=node2(n);n=j-k;printf("%d-%d=%d\n",j,k,n);}while(n!=6174);return 0;
}
int node1(int p)
{int i,s[4],j,lp=0;for(i=0;i<4;i++){s[i]=p%10;p=p/10;}for(i=3;i>=0;i--){for(j=0;j<i;j++){if(s[j]>s[j+1]){int temp;temp=s[j];s[j]=s[j+1];s[j+1]=temp;}}}for(i=3;i>=0;i--){if(i==3){lp=s[i];}else{lp=(lp*10)+s[i];}}return lp;
}
int node2(int op)
{int i,j,s[4],kp=0;for(i=0;i<4;i++){s[i]=op%10;op=op/10;}for(i=3;i>=0;i--){for(j=0;j<i;j++){if(s[j]<s[j+1]){int temp;temp=s[j];s[j]=s[j+1];s[j+1]=temp; }}}for(i=3;i>=0;i--){if(i==3){kp=s[i];}else{kp=(kp*10)+s[i];}}return kp;
}
int lol(int n)
{int count=1;while(n>=10){count++;n=n/10;}return count;
}
问题G:卡布列克常数相关推荐
- C语言编程验证卡布列克,C趣味程序百例(26)卡布列克常数
83.卡布列克常数 验证卡布列克运算.任意一个四位数,只要它们各个位上的数字是不全相同的,就有这样的规律: 1)将组成该四位数的四个数字由大到小排列,形成由这四个数字构成的的四位数: 2)将组成该四位 ...
- Python笔记 | 卡布列克常数
文章目录 0x00 前言 0x01 问题分析 0x02 代码设计 0x03 代码流程 0x04 完整代码 0x05 运行效果 0x06 参考文献 0x07 总结 0x00 前言 任意一个不是由完全相同 ...
- C语言编程验证卡布列克,C语言生趣程序百例精解之JAVA实现(83):卡布列克常数...
C语言趣味程序百例精解之JAVA实现(83):卡布列克常数 C语言趣味程序百例精解之JAVA实现: public class Test83{ public static void main(Strin ...
- [慈溪2010]卡布列克常数
题目描述 最近,小Q在数学兴趣课中了解了"卡布列克常数".卡布列克是一位数学家,他在研究数字时发现:任意一个不是用完全相同数字组成的四位数,如果对它们的每位数字重新排序,组成一个最 ...
- java验证卡布列克常数
/* * java验证卡布列克常数 */ package test1; import java.util.Scanner; public class demo { public static vo ...
- 100个python算法超详细讲解:卡布列克常数
[100个python算法超详细讲解]@谷哥技术 1.问题描述 对于任意一个4位数n,进行如下的运算: 1)将组成该4位数的4个数字由大到小排列,形成由这4个数字构 成的最大的4位数. 2)将组成该4 ...
- 1460 卡布列克常数
题目描述 任意一个4位数,只要它们各个位上的数字是不完全相同的,就有如下规律: 1. 将组成该4位数的4个数字由大到小排列,形成由这4个数字组成的最大的4位数A: 2. 将组成该4位数的4个数字由小到 ...
- JavaScript卡布列克常数
<!DOCTYPE html> <html><head><meta charset="utf-8"><title>< ...
- c语言验证卡不列克常数,卡布列克数
卡布列克数(Kaprekar number)是具有以下性质的数: 对于某个正整数X {\displaystyle X} 在n进位下存在正整数 A, B 及 m,且0 < B < b n { ...
- 数学黑洞(一)令人拍案叫绝的卡布列克常数
卡布列克是一位数学家,他在研究数字时发现:任意一个不是有完全相同数字的组成的四位数,如果对它们的每位数字重新排序,组成一个最大的数各一个最小的数,然后用最大数减去最小数,差不够四位数时补零,类推下去, ...
最新文章
- python - DBUtils 连接池减少oracle数据库的连接数
- numpy.loadtxt画功率谱图
- POJ3714 Raid 平面最近点对
- 周五尾盘上涨,配合周末消息,周一套人的经典实例
- Python_百度图片以及百度贴吧图片抓取
- iOS 13.2正式版放出 支持AirPodsPro
- 2G退网 对用户影响几何?
- PHP学习8——图像处理
- excel制作跨职能流程图_一款在线版流程图工具亿图图示
- 2021-11-07-防火墙添加安全策略
- oracle 复制表方法,Oracle 数据库之表的复制
- [其他][转载]ACM知识点分类
- 读书笔记之《得未曾有》
- 男女偷情为了什么 文 / 自然人生
- 性能测试指标及常用监控工具
- USB总线-Linux内核USB3.0设备控制器中断处理程序分析(九)
- [转载]当猫忧郁的时候
- Derek Wilson:三重缓冲,为什么我们爱它
- 中职计算机专业英语课程改革初探,中职计算机专业英语教学初探.doc
- 小程序canvas头像不显示解决办法