K尾相等数 C语言联系

原创 2013年12月05日 22:00:59
输入一个自然数K(K >1),若存在自然数M和N( M > N),使得K^M和K^N均大于或等于1000,
且它们的末三位数相等,则称M和N是一对K尾相等数。请编一程序,输出M+N值最小的K尾相等数。
输入
输入自然数K
输出
输出M+N值最小的K尾相等数
样例输入
2
样例输出

120


#include<stdio.h>
int main(){
	int i,j,k;
	int mult(long,int);
	long sum1,sum2;
	scanf("%d",&k);
	for(i=2;;i++){
		sum1=mult(k,i);
		for(j=1;j<i;j++){	
			sum2=mult(k,j);
			if((sum1 >= 1000 && sum2 >=1000) && (sum1%1000 == sum2%1000)){
				printf("%d\n",i+j);
				return 0;
			}
		}
	}
	return 0;
}
int mult(long k,int n){
	long sum=1,i;
	for(i=1;i<=n;i++){
		sum=sum%1000;
		sum*=k;
	}
	return sum;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

K尾相等数

  • 2014-05-01 09:30
  • 561B
  • 下载

数论:k尾相等数

题目描述:从键盘输入一个自然数K(K>1),若存在自然数M和N(M>N),使得K^M和K^N均大于或等于1000,且他们末尾三位数相等,则称M和N是一对“K尾相等数”。编写一程序,输出M+N值最小的K...

nyoj-212-K尾相等数

K尾相等数 时间限制:3000 ms  |  内存限制:65535 KB 难度:1 描述输入一个自然数K(K>1),如果存在自然数M和N(M>N),使得K^M和K^N均大于等...

C语言 集合运算 并、交,相对补,对称差,判断两个集合是否相等,求集合幂集(改进幂集)

任务描述 编写程序实现两个集 合的并、交,相对补,对称差的运算并判断两个集合是否相等? 功能要求 ①输入集合A与集合B的元素。 ②输出集合A与B的并、交、相对补、差、对称差运算。 ③输出集合...
  • Lu_1u
  • Lu_1u
  • 2017-06-28 21:08
  • 244

[leetcode]Same Tree(判断两个二叉树是否相等 C语言实现)

Same Tree Given two binary trees, write a function to check if they are equal or not.Two binary tre...

趣味魔方 每行每列对角线的和相等 C语言

Coxeter提出生成奇数阶魔方的方法: 开始时,在魔方第一行的中间一格放1,然后重复以下步骤: 移动到左上一格,把当前的数加1放在这个位置上。如果移动时超出魔方范围,则想象与当前状态完全相同的另...

C语言判断括号个数是否相等

学完了指针,该学字符串了,不过突然心血来潮,就写出了这个东西 大牛飘过。。。

c语言比较两个字符串是否相等strcmp

C语言提供了几个标准库函数,可以比较两个字符串是否相同。以下是用strcmp()函数比较字符串的一个例子: #include #include int main(void) { cha...

C语言 集合运算 并、交,相对补,对称差,判断两个集合是否相等,求集合幂集

编写程序实现两个集 合的并、交,相对补,对称差,幂集的运算并判断两个集合是否相等
  • Lu_1u
  • Lu_1u
  • 2017-06-27 09:27
  • 683
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)