建立子目录网站,网站安全建设方案需求分析,公司做网站的费用的会计分录,简要描述网站建设的基本步骤题目#xff1a;
这里所谓的“光棍”#xff0c;并不是指单身汪啦~ 说的是全部由1组成的数字#xff0c;比如1、11、111、1111等。传说任何一个光棍都能被一个不以5结尾的奇数整除。比如#xff0c;111111就可以被13整除。 现在#xff0c;你的程序要读入一个整数x#…题目
这里所谓的“光棍”并不是指单身汪啦~ 说的是全部由1组成的数字比如1、11、111、1111等。传说任何一个光棍都能被一个不以5结尾的奇数整除。比如111111就可以被13整除。 现在你的程序要读入一个整数x这个整数一定是奇数并且不以5结尾。然后经过计算输出两个数字第一个数字s表示x乘以s是一个光棍第二个数字n是这个光棍的位数。这样的解当然不是唯一的,题目要求你输出最小的解。
提示一个显然的办法是逐渐增加光棍的位数直到可以整除x为止。但难点在于s可能是个非常大的数 —— 比如程序输入31那么就输出3584229390681和15因为31乘以3584229390681的结果是111111111111111一共15个1。
输入格式
输入在一行中给出一个不以5结尾的正奇数x1000。
输出格式
在一行中输出相应的最小的s和n其间以1个空格分隔。
输入样例
31
输出样例
3584229390681 15
分析
1.这道题讲实话刚开始的时候完全没思路因为我很清楚的知道无论是由一组成的数还是该数对n的商都是一个大数而且为未知数所以不能正常运算又是一个除法运算 。。。。。 2. 多位数除法的法则 1从被除数的高位除起除数有几位就看被除数的前几位如果不够除就多看一位。 2除到被除数的哪一位就把商写在哪一位的上面如果不够除就在这一位上商0。 3每次除得的余数必须比除数小并在余数右边一位落下被除数在这一位上的数再继续除。 AC代码
#includebits/stdc.h
using namespace std;
typedef long long ll;
int n;
ll x,tot;
int main(){cinn;x0;while(xn){xx*101;tot;}while(1){printf(%d,x/n);x%n;if(x0) break;xx*101;tot;}cout totendl;return 0;
}