|
发表于 2016-8-14 17:58:24
题目描述: 给定n,a求最大的k,使n!可以被a^k整除但不能被a^(k+1)整除。 输入: 两个整数n(2<=n<=1000),a(2<=a<=1000) 输出: 一个整数. 样例输入: 6 10 样例输出: 1
- /*
- 这段代码为什么不能AC呢?大神们帮忙看看哪里出问题了
- */
- #include <stdio.h>
- #include <stdlib.h>
- int main(void)
- {
- long n,a=1,k,j=1,t=1,s=1;
- int i;
- while(scanf("%ld%ld",&n,&a)!=EOF)
- {
- for(i=1;i<=n;++i)
- {
- n*=i;
- }
- for(k=1;(n%t==0&&n%s!=0);k++)
- {
- while(j<=k)
- {
- t*=a;
- s=t*a;
- }
- }
- printf("%ld\n",k);
- }
- return 0;
- }
复制代码 |
|