//
//  main.c
//  Math_SolveNumber
//
//  Created by Mac on 2023/2/25.
///**问题:一个整数,个位是4,把4移动到首位,则变为原来4倍,那么这个数是?解法1: 暴力破解法  brute force假设4前面的数是A,A有n位。则4*(10*A + 4) = 4*10^n + A  n:[1.....]39*A + 16 = 4*10^nA = (4*10^n - 16)/39解法2: 竖式法  Column Multiplication...a6 a5 a4 a3 a2 a1 4*                 4------------------------------------4 ....a6 a5 a4 a3 a2 a14*4=16  ->  a1:6 -> a2:5 ->.....解法3:构造法。 Structure
设 K=0.an.....a3a2a14 an....a3a2a14 ......     //an.....a3a2a14  循环节4K=0.4an....a3a2a1 4an...a3a2a2 .....       //4an....a3a2a1  循环节40K=4 + KK = 4/39       计算这个分数,如果第一位开始就是无限循环小数,则循环节就是解。注:
1, u64.max = 1844 6744 0737 0955 1615 < 1.9*10^19 由于还要乘以倍数 所以 n最大取18
2, 没有过滤掉首位为0的数*/
#include <stdio.h>
#include <math.h>
#include <stdlib.h>#define YES 1
#define NO 0typedef struct{uint8_t lastDigit;  //尾数4uint8_t times;      //移到前面后的倍数
} SolverNum_Condition_t;static struct{uint8_t printFailItems;//打印失败项信息uint8_t breakOnHit;//找到一个即退出uint8_t columnMuti_maxDigit;//最大寻找位数
}SolverNum_s_config;void SolverNum_BruteForce(void)
{printf("\n\nBruteForce()");for (int n = 1; n<18; n++) {uint64_t numerator = 4*powl(10,n) - 16;uint64_t A = numerator / 39;double  Af = numerator / 39.0;uint64_t remainder = numerator % 39;if(remainder == 0){printf("\nn:%02d remainder:%lld \t  Yes \t A:%lld =>%lld*4=%lld",n,remainder,A,10*A+4,(10*A+4)*4);}else if(SolverNum_s_config.printFailItems){printf("\nn:%02d remainder:%lld \t  Not \t A:%.6f",n,remainder,Af);}}
}void SolverNum_BruteForceEx(SolverNum_Condition_t param)
{printf("\n\nBruteForceEx(lastDigte:%d,times:%d)",param.lastDigit,param.times);for (int n = 1; n<18; n++) {uint64_t numerator = param.lastDigit * powl(10,n) - param.times*param.lastDigit;uint64_t denominator = (param.times * 10 - 1);uint64_t A = numerator / denominator;double  Af = numerator * 1.0 / denominator;uint64_t remainder = numerator % denominator;if(remainder == 0){printf("\nn:%02d remainder:%lld \t  Yes \t A:%lld =>%lld*%d=%lld",n,remainder,A,10*A+param.lastDigit,param.times, (10*A+param.lastDigit)*param.times);}else if(SolverNum_s_config.printFailItems){printf("\nn:%02d remainder:%lld \t  Not \t A:%.6f",n,remainder,Af);}}
}void SolverNum_ColumnMultiEx(SolverNum_Condition_t param)
{printf("\n\nColumnMultiEx(lastDigte:%d,times:%d)",param.lastDigit,param.times);uint8_t *pOriginNum = malloc(SolverNum_s_config.columnMuti_maxDigit);uint8_t *pNewNum = malloc(SolverNum_s_config.columnMuti_maxDigit);for (int i = 0; i<SolverNum_s_config.columnMuti_maxDigit; i++) {pOriginNum[i] = 0;pNewNum[i] = 0;}pOriginNum[0] = param.lastDigit;uint8_t u1CarriedOver  = 0;for (int i = 0; i<SolverNum_s_config.columnMuti_maxDigit; i++) {uint8_t tmpProduct = pOriginNum[i] * param.times + u1CarriedOver;pNewNum[i] = tmpProduct%10;u1CarriedOver = tmpProduct/10;if (u1CarriedOver == 0 && pNewNum[i] == param.lastDigit) {printf("\n");for (int j = i; j >= 0; j--) {printf("%d",pOriginNum[j]);}printf("*%d=",param.times);for (int j = i; j >= 0; j--) {printf("%d",pNewNum[j]);}if (SolverNum_s_config.breakOnHit) {break;}}pOriginNum[i+1] = pNewNum[i];}free(pOriginNum);free(pNewNum);
}
/*
解法3:构造法。 Structure
设 K=0.an.....a3a2a14 an....a3a2a14 ......     //an.....a3a2a14  循环节
4K=0.4an....a3a2a1 4an...a3a2a2 .....       //4an....a3a2a1  循环节
40K=4 + K
K = 4/39       计算这个分数,如果第一位开始就是无限循环小数,则循环节就是解。*/void SolverNum_Structure(SolverNum_Condition_t param)
{printf("\n\nStructure(lastDigte:%d,times:%d)",param.lastDigit,param.times);int numerator = param.lastDigit;int denominator = param.times*10 - 1;double value = numerator *1.0/denominator;printf("\n %d/%d -> %.20f",numerator,denominator, value);for (int i = 1; i < 18; i++) {uint64_t num99 = powl(10, i) - 1;if(num99%denominator == 0){uint64_t newNumerator = num99/denominator*numerator;printf(" -> %lld*%d=%lld",newNumerator,param.times,newNumerator*param.times);if(SolverNum_s_config.breakOnHit)break;}}
}#define TEST_BRUTEFORCE 1
#define TEST_BRUTEFORCEEX  1
#define TEST_COLUMNMULTIEX  1
#define TEST_STRUCTURE  1
int main(int argc, const char * argv[])
{SolverNum_Condition_t param;#if TEST_BRUTEFORCESolverNum_s_config.printFailItems = YES;SolverNum_s_config.breakOnHit = NO;SolverNum_BruteForce();
#endif#if TEST_BRUTEFORCEEXSolverNum_s_config.printFailItems = NO;SolverNum_s_config.breakOnHit = NO;for(int i = 1; i < 10; i++){for (int j = 1; j<10; j++) {param.lastDigit=i;param.times = j;SolverNum_BruteForceEx(param);}}
#endif#if TEST_COLUMNMULTIEXSolverNum_s_config.columnMuti_maxDigit = 100;SolverNum_s_config.breakOnHit = YES;for(int i = 1; i < 10; i++){for (int j = 1; j<10; j++) {param.lastDigit=i;param.times = j;SolverNum_ColumnMultiEx(param);}}
#endif#if TEST_STRUCTUREfor(int i = 1; i < 10; i++){for (int j = 1; j<10; j++) {param.lastDigit=i;param.times = j;SolverNum_Structure(param);}}
#endifreturn 0;
}/**BruteForce()n:01 remainder:24       Not      A:0.615385n:02 remainder:33       Not      A:9.846154n:03 remainder:6       Not      A:102.153846n:04 remainder:9       Not      A:1025.230769n:05 remainder:0       Yes      A:10256 =>102564*4=410256n:06 remainder:27       Not      A:102563.692308n:07 remainder:24       Not      A:1025640.615385n:08 remainder:33       Not      A:10256409.846154n:09 remainder:6       Not      A:102564102.153846n:10 remainder:9       Not      A:1025641025.230769n:11 remainder:0       Yes      A:10256410256 =>102564102564*4=410256410256n:12 remainder:27       Not      A:102564102563.692307n:13 remainder:24       Not      A:1025641025640.615356n:14 remainder:33       Not      A:10256410256409.845703n:15 remainder:6       Not      A:102564102564102.156250n:16 remainder:9       Not      A:1025641025641025.250000n:17 remainder:0       Yes      A:10256410256410256 =>102564102564102564*4=410256410256410256BruteForceEx(lastDigte:1,times:1)n:01 remainder:0       Yes      A:1 =>11*1=11n:02 remainder:0       Yes      A:11 =>111*1=111n:03 remainder:0       Yes      A:111 =>1111*1=1111n:04 remainder:0       Yes      A:1111 =>11111*1=11111n:05 remainder:0       Yes      A:11111 =>111111*1=111111n:06 remainder:0       Yes      A:111111 =>1111111*1=1111111n:07 remainder:0       Yes      A:1111111 =>11111111*1=11111111n:08 remainder:0       Yes      A:11111111 =>111111111*1=111111111n:09 remainder:0       Yes      A:111111111 =>1111111111*1=1111111111n:10 remainder:0       Yes      A:1111111111 =>11111111111*1=11111111111n:11 remainder:0       Yes      A:11111111111 =>111111111111*1=111111111111n:12 remainder:0       Yes      A:111111111111 =>1111111111111*1=1111111111111n:13 remainder:0       Yes      A:1111111111111 =>11111111111111*1=11111111111111n:14 remainder:0       Yes      A:11111111111111 =>111111111111111*1=111111111111111n:15 remainder:0       Yes      A:111111111111111 =>1111111111111111*1=1111111111111111n:16 remainder:0       Yes      A:1111111111111111 =>11111111111111111*1=11111111111111111n:17 remainder:0       Yes      A:11111111111111111 =>111111111111111111*1=111111111111111111BruteForceEx(lastDigte:1,times:2)n:17 remainder:0       Yes      A:5263157894736842 =>52631578947368421*2=105263157894736842BruteForceEx(lastDigte:1,times:3)BruteForceEx(lastDigte:1,times:4)n:05 remainder:0       Yes      A:2564 =>25641*4=102564n:11 remainder:0       Yes      A:2564102564 =>25641025641*4=102564102564n:17 remainder:0       Yes      A:2564102564102564 =>25641025641025641*4=102564102564102564BruteForceEx(lastDigte:1,times:5)BruteForceEx(lastDigte:1,times:6)BruteForceEx(lastDigte:1,times:7)BruteForceEx(lastDigte:1,times:8)n:12 remainder:0       Yes      A:12658227848 =>126582278481*8=1012658227848BruteForceEx(lastDigte:1,times:9)BruteForceEx(lastDigte:2,times:1)n:01 remainder:0       Yes      A:2 =>22*1=22n:02 remainder:0       Yes      A:22 =>222*1=222n:03 remainder:0       Yes      A:222 =>2222*1=2222n:04 remainder:0       Yes      A:2222 =>22222*1=22222n:05 remainder:0       Yes      A:22222 =>222222*1=222222n:06 remainder:0       Yes      A:222222 =>2222222*1=2222222n:07 remainder:0       Yes      A:2222222 =>22222222*1=22222222n:08 remainder:0       Yes      A:22222222 =>222222222*1=222222222n:09 remainder:0       Yes      A:222222222 =>2222222222*1=2222222222n:10 remainder:0       Yes      A:2222222222 =>22222222222*1=22222222222n:11 remainder:0       Yes      A:22222222222 =>222222222222*1=222222222222n:12 remainder:0       Yes      A:222222222222 =>2222222222222*1=2222222222222n:13 remainder:0       Yes      A:2222222222222 =>22222222222222*1=22222222222222n:14 remainder:0       Yes      A:22222222222222 =>222222222222222*1=222222222222222n:15 remainder:0       Yes      A:222222222222222 =>2222222222222222*1=2222222222222222n:16 remainder:0       Yes      A:2222222222222222 =>22222222222222222*1=22222222222222222n:17 remainder:0       Yes      A:22222222222222222 =>222222222222222222*1=222222222222222222BruteForceEx(lastDigte:2,times:2)n:17 remainder:0       Yes      A:10526315789473684 =>105263157894736842*2=210526315789473684BruteForceEx(lastDigte:2,times:3)BruteForceEx(lastDigte:2,times:4)n:05 remainder:0       Yes      A:5128 =>51282*4=205128n:11 remainder:0       Yes      A:5128205128 =>51282051282*4=205128205128n:17 remainder:0       Yes      A:5128205128205128 =>51282051282051282*4=205128205128205128BruteForceEx(lastDigte:2,times:5)BruteForceEx(lastDigte:2,times:6)BruteForceEx(lastDigte:2,times:7)BruteForceEx(lastDigte:2,times:8)n:12 remainder:0       Yes      A:25316455696 =>253164556962*8=2025316455696BruteForceEx(lastDigte:2,times:9)BruteForceEx(lastDigte:3,times:1)n:01 remainder:0       Yes      A:3 =>33*1=33n:02 remainder:0       Yes      A:33 =>333*1=333n:03 remainder:0       Yes      A:333 =>3333*1=3333n:04 remainder:0       Yes      A:3333 =>33333*1=33333n:05 remainder:0       Yes      A:33333 =>333333*1=333333n:06 remainder:0       Yes      A:333333 =>3333333*1=3333333n:07 remainder:0       Yes      A:3333333 =>33333333*1=33333333n:08 remainder:0       Yes      A:33333333 =>333333333*1=333333333n:09 remainder:0       Yes      A:333333333 =>3333333333*1=3333333333n:10 remainder:0       Yes      A:3333333333 =>33333333333*1=33333333333n:11 remainder:0       Yes      A:33333333333 =>333333333333*1=333333333333n:12 remainder:0       Yes      A:333333333333 =>3333333333333*1=3333333333333n:13 remainder:0       Yes      A:3333333333333 =>33333333333333*1=33333333333333n:14 remainder:0       Yes      A:33333333333333 =>333333333333333*1=333333333333333n:15 remainder:0       Yes      A:333333333333333 =>3333333333333333*1=3333333333333333n:16 remainder:0       Yes      A:3333333333333333 =>33333333333333333*1=33333333333333333n:17 remainder:0       Yes      A:33333333333333333 =>333333333333333333*1=333333333333333333BruteForceEx(lastDigte:3,times:2)n:17 remainder:0       Yes      A:15789473684210526 =>157894736842105263*2=315789473684210526BruteForceEx(lastDigte:3,times:3)BruteForceEx(lastDigte:3,times:4)n:05 remainder:0       Yes      A:7692 =>76923*4=307692n:11 remainder:0       Yes      A:7692307692 =>76923076923*4=307692307692n:17 remainder:0       Yes      A:7692307692307692 =>76923076923076923*4=307692307692307692BruteForceEx(lastDigte:3,times:5)BruteForceEx(lastDigte:3,times:6)BruteForceEx(lastDigte:3,times:7)BruteForceEx(lastDigte:3,times:8)n:12 remainder:0       Yes      A:37974683544 =>379746835443*8=3037974683544BruteForceEx(lastDigte:3,times:9)BruteForceEx(lastDigte:4,times:1)n:01 remainder:0       Yes      A:4 =>44*1=44n:02 remainder:0       Yes      A:44 =>444*1=444n:03 remainder:0       Yes      A:444 =>4444*1=4444n:04 remainder:0       Yes      A:4444 =>44444*1=44444n:05 remainder:0       Yes      A:44444 =>444444*1=444444n:06 remainder:0       Yes      A:444444 =>4444444*1=4444444n:07 remainder:0       Yes      A:4444444 =>44444444*1=44444444n:08 remainder:0       Yes      A:44444444 =>444444444*1=444444444n:09 remainder:0       Yes      A:444444444 =>4444444444*1=4444444444n:10 remainder:0       Yes      A:4444444444 =>44444444444*1=44444444444n:11 remainder:0       Yes      A:44444444444 =>444444444444*1=444444444444n:12 remainder:0       Yes      A:444444444444 =>4444444444444*1=4444444444444n:13 remainder:0       Yes      A:4444444444444 =>44444444444444*1=44444444444444n:14 remainder:0       Yes      A:44444444444444 =>444444444444444*1=444444444444444n:15 remainder:0       Yes      A:444444444444444 =>4444444444444444*1=4444444444444444n:16 remainder:0       Yes      A:4444444444444444 =>44444444444444444*1=44444444444444444n:17 remainder:0       Yes      A:44444444444444444 =>444444444444444444*1=444444444444444444BruteForceEx(lastDigte:4,times:2)n:17 remainder:0       Yes      A:21052631578947368 =>210526315789473684*2=421052631578947368BruteForceEx(lastDigte:4,times:3)BruteForceEx(lastDigte:4,times:4)n:05 remainder:0       Yes      A:10256 =>102564*4=410256n:11 remainder:0       Yes      A:10256410256 =>102564102564*4=410256410256n:17 remainder:0       Yes      A:10256410256410256 =>102564102564102564*4=410256410256410256BruteForceEx(lastDigte:4,times:5)BruteForceEx(lastDigte:4,times:6)BruteForceEx(lastDigte:4,times:7)BruteForceEx(lastDigte:4,times:8)n:12 remainder:0       Yes      A:50632911392 =>506329113924*8=4050632911392BruteForceEx(lastDigte:4,times:9)BruteForceEx(lastDigte:5,times:1)n:01 remainder:0       Yes      A:5 =>55*1=55n:02 remainder:0       Yes      A:55 =>555*1=555n:03 remainder:0       Yes      A:555 =>5555*1=5555n:04 remainder:0       Yes      A:5555 =>55555*1=55555n:05 remainder:0       Yes      A:55555 =>555555*1=555555n:06 remainder:0       Yes      A:555555 =>5555555*1=5555555n:07 remainder:0       Yes      A:5555555 =>55555555*1=55555555n:08 remainder:0       Yes      A:55555555 =>555555555*1=555555555n:09 remainder:0       Yes      A:555555555 =>5555555555*1=5555555555n:10 remainder:0       Yes      A:5555555555 =>55555555555*1=55555555555n:11 remainder:0       Yes      A:55555555555 =>555555555555*1=555555555555n:12 remainder:0       Yes      A:555555555555 =>5555555555555*1=5555555555555n:13 remainder:0       Yes      A:5555555555555 =>55555555555555*1=55555555555555n:14 remainder:0       Yes      A:55555555555555 =>555555555555555*1=555555555555555n:15 remainder:0       Yes      A:555555555555555 =>5555555555555555*1=5555555555555555n:16 remainder:0       Yes      A:5555555555555555 =>55555555555555555*1=55555555555555555n:17 remainder:0       Yes      A:55555555555555555 =>555555555555555555*1=555555555555555555BruteForceEx(lastDigte:5,times:2)n:17 remainder:0       Yes      A:26315789473684210 =>263157894736842105*2=526315789473684210BruteForceEx(lastDigte:5,times:3)BruteForceEx(lastDigte:5,times:4)n:05 remainder:0       Yes      A:12820 =>128205*4=512820n:11 remainder:0       Yes      A:12820512820 =>128205128205*4=512820512820n:17 remainder:0       Yes      A:12820512820512820 =>128205128205128205*4=512820512820512820BruteForceEx(lastDigte:5,times:5)BruteForceEx(lastDigte:5,times:6)BruteForceEx(lastDigte:5,times:7)BruteForceEx(lastDigte:5,times:8)n:12 remainder:0       Yes      A:63291139240 =>632911392405*8=5063291139240BruteForceEx(lastDigte:5,times:9)BruteForceEx(lastDigte:6,times:1)n:01 remainder:0       Yes      A:6 =>66*1=66n:02 remainder:0       Yes      A:66 =>666*1=666n:03 remainder:0       Yes      A:666 =>6666*1=6666n:04 remainder:0       Yes      A:6666 =>66666*1=66666n:05 remainder:0       Yes      A:66666 =>666666*1=666666n:06 remainder:0       Yes      A:666666 =>6666666*1=6666666n:07 remainder:0       Yes      A:6666666 =>66666666*1=66666666n:08 remainder:0       Yes      A:66666666 =>666666666*1=666666666n:09 remainder:0       Yes      A:666666666 =>6666666666*1=6666666666n:10 remainder:0       Yes      A:6666666666 =>66666666666*1=66666666666n:11 remainder:0       Yes      A:66666666666 =>666666666666*1=666666666666n:12 remainder:0       Yes      A:666666666666 =>6666666666666*1=6666666666666n:13 remainder:0       Yes      A:6666666666666 =>66666666666666*1=66666666666666n:14 remainder:0       Yes      A:66666666666666 =>666666666666666*1=666666666666666n:15 remainder:0       Yes      A:666666666666666 =>6666666666666666*1=6666666666666666n:16 remainder:0       Yes      A:6666666666666666 =>66666666666666666*1=66666666666666666n:17 remainder:0       Yes      A:66666666666666666 =>666666666666666666*1=666666666666666666BruteForceEx(lastDigte:6,times:2)n:17 remainder:0       Yes      A:31578947368421052 =>315789473684210526*2=631578947368421052BruteForceEx(lastDigte:6,times:3)BruteForceEx(lastDigte:6,times:4)n:05 remainder:0       Yes      A:15384 =>153846*4=615384n:11 remainder:0       Yes      A:15384615384 =>153846153846*4=615384615384n:17 remainder:0       Yes      A:15384615384615384 =>153846153846153846*4=615384615384615384BruteForceEx(lastDigte:6,times:5)BruteForceEx(lastDigte:6,times:6)BruteForceEx(lastDigte:6,times:7)BruteForceEx(lastDigte:6,times:8)n:12 remainder:0       Yes      A:75949367088 =>759493670886*8=6075949367088BruteForceEx(lastDigte:6,times:9)BruteForceEx(lastDigte:7,times:1)n:01 remainder:0       Yes      A:7 =>77*1=77n:02 remainder:0       Yes      A:77 =>777*1=777n:03 remainder:0       Yes      A:777 =>7777*1=7777n:04 remainder:0       Yes      A:7777 =>77777*1=77777n:05 remainder:0       Yes      A:77777 =>777777*1=777777n:06 remainder:0       Yes      A:777777 =>7777777*1=7777777n:07 remainder:0       Yes      A:7777777 =>77777777*1=77777777n:08 remainder:0       Yes      A:77777777 =>777777777*1=777777777n:09 remainder:0       Yes      A:777777777 =>7777777777*1=7777777777n:10 remainder:0       Yes      A:7777777777 =>77777777777*1=77777777777n:11 remainder:0       Yes      A:77777777777 =>777777777777*1=777777777777n:12 remainder:0       Yes      A:777777777777 =>7777777777777*1=7777777777777n:13 remainder:0       Yes      A:7777777777777 =>77777777777777*1=77777777777777n:14 remainder:0       Yes      A:77777777777777 =>777777777777777*1=777777777777777n:15 remainder:0       Yes      A:777777777777777 =>7777777777777777*1=7777777777777777n:16 remainder:0       Yes      A:7777777777777777 =>77777777777777777*1=77777777777777777n:17 remainder:0       Yes      A:77777777777777777 =>777777777777777777*1=777777777777777777BruteForceEx(lastDigte:7,times:2)n:17 remainder:0       Yes      A:36842105263157894 =>368421052631578947*2=736842105263157894BruteForceEx(lastDigte:7,times:3)BruteForceEx(lastDigte:7,times:4)n:05 remainder:0       Yes      A:17948 =>179487*4=717948n:11 remainder:0       Yes      A:17948717948 =>179487179487*4=717948717948n:17 remainder:0       Yes      A:17948717948717948 =>179487179487179487*4=717948717948717948BruteForceEx(lastDigte:7,times:5)n:05 remainder:0       Yes      A:14285 =>142857*5=714285n:11 remainder:0       Yes      A:14285714285 =>142857142857*5=714285714285n:17 remainder:0       Yes      A:14285714285714285 =>142857142857142857*5=714285714285714285BruteForceEx(lastDigte:7,times:6)BruteForceEx(lastDigte:7,times:7)BruteForceEx(lastDigte:7,times:8)n:12 remainder:0       Yes      A:88607594936 =>886075949367*8=7088607594936BruteForceEx(lastDigte:7,times:9)BruteForceEx(lastDigte:8,times:1)n:01 remainder:0       Yes      A:8 =>88*1=88n:02 remainder:0       Yes      A:88 =>888*1=888n:03 remainder:0       Yes      A:888 =>8888*1=8888n:04 remainder:0       Yes      A:8888 =>88888*1=88888n:05 remainder:0       Yes      A:88888 =>888888*1=888888n:06 remainder:0       Yes      A:888888 =>8888888*1=8888888n:07 remainder:0       Yes      A:8888888 =>88888888*1=88888888n:08 remainder:0       Yes      A:88888888 =>888888888*1=888888888n:09 remainder:0       Yes      A:888888888 =>8888888888*1=8888888888n:10 remainder:0       Yes      A:8888888888 =>88888888888*1=88888888888n:11 remainder:0       Yes      A:88888888888 =>888888888888*1=888888888888n:12 remainder:0       Yes      A:888888888888 =>8888888888888*1=8888888888888n:13 remainder:0       Yes      A:8888888888888 =>88888888888888*1=88888888888888n:14 remainder:0       Yes      A:88888888888888 =>888888888888888*1=888888888888888n:15 remainder:0       Yes      A:888888888888888 =>8888888888888888*1=8888888888888888n:16 remainder:0       Yes      A:8888888888888888 =>88888888888888888*1=88888888888888888n:17 remainder:0       Yes      A:88888888888888888 =>888888888888888888*1=888888888888888888BruteForceEx(lastDigte:8,times:2)n:17 remainder:0       Yes      A:42105263157894736 =>421052631578947368*2=842105263157894736BruteForceEx(lastDigte:8,times:3)BruteForceEx(lastDigte:8,times:4)n:05 remainder:0       Yes      A:20512 =>205128*4=820512n:11 remainder:0       Yes      A:20512820512 =>205128205128*4=820512820512n:17 remainder:0       Yes      A:20512820512820512 =>205128205128205128*4=820512820512820512BruteForceEx(lastDigte:8,times:5)BruteForceEx(lastDigte:8,times:6)BruteForceEx(lastDigte:8,times:7)BruteForceEx(lastDigte:8,times:8)n:12 remainder:0       Yes      A:101265822784 =>1012658227848*8=8101265822784BruteForceEx(lastDigte:8,times:9)BruteForceEx(lastDigte:9,times:1)n:01 remainder:0       Yes      A:9 =>99*1=99n:02 remainder:0       Yes      A:99 =>999*1=999n:03 remainder:0       Yes      A:999 =>9999*1=9999n:04 remainder:0       Yes      A:9999 =>99999*1=99999n:05 remainder:0       Yes      A:99999 =>999999*1=999999n:06 remainder:0       Yes      A:999999 =>9999999*1=9999999n:07 remainder:0       Yes      A:9999999 =>99999999*1=99999999n:08 remainder:0       Yes      A:99999999 =>999999999*1=999999999n:09 remainder:0       Yes      A:999999999 =>9999999999*1=9999999999n:10 remainder:0       Yes      A:9999999999 =>99999999999*1=99999999999n:11 remainder:0       Yes      A:99999999999 =>999999999999*1=999999999999n:12 remainder:0       Yes      A:999999999999 =>9999999999999*1=9999999999999n:13 remainder:0       Yes      A:9999999999999 =>99999999999999*1=99999999999999n:14 remainder:0       Yes      A:99999999999999 =>999999999999999*1=999999999999999n:15 remainder:0       Yes      A:999999999999999 =>9999999999999999*1=9999999999999999n:16 remainder:0       Yes      A:9999999999999999 =>99999999999999999*1=99999999999999999n:17 remainder:0       Yes      A:99999999999999999 =>999999999999999999*1=999999999999999999BruteForceEx(lastDigte:9,times:2)n:17 remainder:0       Yes      A:47368421052631578 =>473684210526315789*2=947368421052631578BruteForceEx(lastDigte:9,times:3)BruteForceEx(lastDigte:9,times:4)n:05 remainder:0       Yes      A:23076 =>230769*4=923076n:11 remainder:0       Yes      A:23076923076 =>230769230769*4=923076923076n:17 remainder:0       Yes      A:23076923076923076 =>230769230769230769*4=923076923076923076BruteForceEx(lastDigte:9,times:5)BruteForceEx(lastDigte:9,times:6)BruteForceEx(lastDigte:9,times:7)BruteForceEx(lastDigte:9,times:8)n:12 remainder:0       Yes      A:113924050632 =>1139240506329*8=9113924050632BruteForceEx(lastDigte:9,times:9)ColumnMultiEx(lastDigte:1,times:1)1*1=1ColumnMultiEx(lastDigte:1,times:2)052631578947368421*2=105263157894736842ColumnMultiEx(lastDigte:1,times:3)0344827586206896551724137931*3=1034482758620689655172413793ColumnMultiEx(lastDigte:1,times:4)025641*4=102564ColumnMultiEx(lastDigte:1,times:5)020408163265306122448979591836734693877551*5=102040816326530612244897959183673469387755ColumnMultiEx(lastDigte:1,times:6)0169491525423728813559322033898305084745762711864406779661*6=1016949152542372881355932203389830508474576271186440677966ColumnMultiEx(lastDigte:1,times:7)0144927536231884057971*7=1014492753623188405797ColumnMultiEx(lastDigte:1,times:8)0126582278481*8=1012658227848ColumnMultiEx(lastDigte:1,times:9)01123595505617977528089887640449438202247191*9=10112359550561797752808988764044943820224719ColumnMultiEx(lastDigte:2,times:1)2*1=2ColumnMultiEx(lastDigte:2,times:2)105263157894736842*2=210526315789473684ColumnMultiEx(lastDigte:2,times:3)0689655172413793103448275862*3=2068965517241379310344827586ColumnMultiEx(lastDigte:2,times:4)051282*4=205128ColumnMultiEx(lastDigte:2,times:5)040816326530612244897959183673469387755102*5=204081632653061224489795918367346938775510ColumnMultiEx(lastDigte:2,times:6)0338983050847457627118644067796610169491525423728813559322*6=2033898305084745762711864406779661016949152542372881355932ColumnMultiEx(lastDigte:2,times:7)0289855072463768115942*7=2028985507246376811594ColumnMultiEx(lastDigte:2,times:8)0253164556962*8=2025316455696ColumnMultiEx(lastDigte:2,times:9)02247191011235955056179775280898876404494382*9=20224719101123595505617977528089887640449438ColumnMultiEx(lastDigte:3,times:1)3*1=3ColumnMultiEx(lastDigte:3,times:2)157894736842105263*2=315789473684210526ColumnMultiEx(lastDigte:3,times:3)1034482758620689655172413793*3=3103448275862068965517241379ColumnMultiEx(lastDigte:3,times:4)076923*4=307692ColumnMultiEx(lastDigte:3,times:5)061224489795918367346938775510204081632653*5=306122448979591836734693877551020408163265ColumnMultiEx(lastDigte:3,times:6)0508474576271186440677966101694915254237288135593220338983*6=3050847457627118644067796610169491525423728813559322033898ColumnMultiEx(lastDigte:3,times:7)0434782608695652173913*7=3043478260869565217391ColumnMultiEx(lastDigte:3,times:8)0379746835443*8=3037974683544ColumnMultiEx(lastDigte:3,times:9)03370786516853932584269662921348314606741573*9=30337078651685393258426966292134831460674157ColumnMultiEx(lastDigte:4,times:1)4*1=4ColumnMultiEx(lastDigte:4,times:2)210526315789473684*2=421052631578947368ColumnMultiEx(lastDigte:4,times:3)1379310344827586206896551724*3=4137931034482758620689655172ColumnMultiEx(lastDigte:4,times:4)102564*4=410256ColumnMultiEx(lastDigte:4,times:5)081632653061224489795918367346938775510204*5=408163265306122448979591836734693877551020ColumnMultiEx(lastDigte:4,times:6)0677966101694915254237288135593220338983050847457627118644*6=4067796610169491525423728813559322033898305084745762711864ColumnMultiEx(lastDigte:4,times:7)0579710144927536231884*7=4057971014492753623188ColumnMultiEx(lastDigte:4,times:8)0506329113924*8=4050632911392ColumnMultiEx(lastDigte:4,times:9)04494382022471910112359550561797752808988764*9=40449438202247191011235955056179775280898876ColumnMultiEx(lastDigte:5,times:1)5*1=5ColumnMultiEx(lastDigte:5,times:2)263157894736842105*2=526315789473684210ColumnMultiEx(lastDigte:5,times:3)1724137931034482758620689655*3=5172413793103448275862068965ColumnMultiEx(lastDigte:5,times:4)128205*4=512820ColumnMultiEx(lastDigte:5,times:5)102040816326530612244897959183673469387755*5=510204081632653061224489795918367346938775ColumnMultiEx(lastDigte:5,times:6)0847457627118644067796610169491525423728813559322033898305*6=5084745762711864406779661016949152542372881355932203389830ColumnMultiEx(lastDigte:5,times:7)0724637681159420289855*7=5072463768115942028985ColumnMultiEx(lastDigte:5,times:8)0632911392405*8=5063291139240ColumnMultiEx(lastDigte:5,times:9)05617977528089887640449438202247191011235955*9=50561797752808988764044943820224719101123595ColumnMultiEx(lastDigte:6,times:1)6*1=6ColumnMultiEx(lastDigte:6,times:2)315789473684210526*2=631578947368421052ColumnMultiEx(lastDigte:6,times:3)2068965517241379310344827586*3=6206896551724137931034482758ColumnMultiEx(lastDigte:6,times:4)153846*4=615384ColumnMultiEx(lastDigte:6,times:5)122448979591836734693877551020408163265306*5=612244897959183673469387755102040816326530ColumnMultiEx(lastDigte:6,times:6)1016949152542372881355932203389830508474576271186440677966*6=6101694915254237288135593220338983050847457627118644067796ColumnMultiEx(lastDigte:6,times:7)0869565217391304347826*7=6086956521739130434782ColumnMultiEx(lastDigte:6,times:8)0759493670886*8=6075949367088ColumnMultiEx(lastDigte:6,times:9)06741573033707865168539325842696629213483146*9=60674157303370786516853932584269662921348314ColumnMultiEx(lastDigte:7,times:1)7*1=7ColumnMultiEx(lastDigte:7,times:2)368421052631578947*2=736842105263157894ColumnMultiEx(lastDigte:7,times:3)2413793103448275862068965517*3=7241379310344827586206896551ColumnMultiEx(lastDigte:7,times:4)179487*4=717948ColumnMultiEx(lastDigte:7,times:5)142857*5=714285ColumnMultiEx(lastDigte:7,times:6)1186440677966101694915254237288135593220338983050847457627*6=7118644067796610169491525423728813559322033898305084745762ColumnMultiEx(lastDigte:7,times:7)1014492753623188405797*7=7101449275362318840579ColumnMultiEx(lastDigte:7,times:8)0886075949367*8=7088607594936ColumnMultiEx(lastDigte:7,times:9)07865168539325842696629213483146067415730337*9=70786516853932584269662921348314606741573033ColumnMultiEx(lastDigte:8,times:1)8*1=8ColumnMultiEx(lastDigte:8,times:2)421052631578947368*2=842105263157894736ColumnMultiEx(lastDigte:8,times:3)2758620689655172413793103448*3=8275862068965517241379310344ColumnMultiEx(lastDigte:8,times:4)205128*4=820512ColumnMultiEx(lastDigte:8,times:5)163265306122448979591836734693877551020408*5=816326530612244897959183673469387755102040ColumnMultiEx(lastDigte:8,times:6)1355932203389830508474576271186440677966101694915254237288*6=8135593220338983050847457627118644067796610169491525423728ColumnMultiEx(lastDigte:8,times:7)1159420289855072463768*7=8115942028985507246376ColumnMultiEx(lastDigte:8,times:8)1012658227848*8=8101265822784ColumnMultiEx(lastDigte:8,times:9)08988764044943820224719101123595505617977528*9=80898876404494382022471910112359550561797752ColumnMultiEx(lastDigte:9,times:1)9*1=9ColumnMultiEx(lastDigte:9,times:2)473684210526315789*2=947368421052631578ColumnMultiEx(lastDigte:9,times:3)3103448275862068965517241379*3=9310344827586206896551724137ColumnMultiEx(lastDigte:9,times:4)230769*4=923076ColumnMultiEx(lastDigte:9,times:5)183673469387755102040816326530612244897959*5=918367346938775510204081632653061224489795ColumnMultiEx(lastDigte:9,times:6)1525423728813559322033898305084745762711864406779661016949*6=9152542372881355932203389830508474576271186440677966101694ColumnMultiEx(lastDigte:9,times:7)1304347826086956521739*7=9130434782608695652173ColumnMultiEx(lastDigte:9,times:8)1139240506329*8=9113924050632ColumnMultiEx(lastDigte:9,times:9)10112359550561797752808988764044943820224719*9=91011235955056179775280898876404494382022471Structure(lastDigte:1,times:1)1/9 -> 0.11111111111111110494 -> 1*1=1Structure(lastDigte:1,times:2)1/19 -> 0.05263157894736841813Structure(lastDigte:1,times:3)1/29 -> 0.03448275862068965469Structure(lastDigte:1,times:4)1/39 -> 0.02564102564102564014 -> 25641*4=102564Structure(lastDigte:1,times:5)1/49 -> 0.02040816326530612082Structure(lastDigte:1,times:6)1/59 -> 0.01694915254237288130Structure(lastDigte:1,times:7)1/69 -> 0.01449275362318840597Structure(lastDigte:1,times:8)1/79 -> 0.01265822784810126563 -> 126582278481*8=1012658227848Structure(lastDigte:1,times:9)1/89 -> 0.01123595505617977497Structure(lastDigte:2,times:1)2/9 -> 0.22222222222222220989 -> 2*1=2Structure(lastDigte:2,times:2)2/19 -> 0.10526315789473683626Structure(lastDigte:2,times:3)2/29 -> 0.06896551724137930939Structure(lastDigte:2,times:4)2/39 -> 0.05128205128205128027 -> 51282*4=205128Structure(lastDigte:2,times:5)2/49 -> 0.04081632653061224164Structure(lastDigte:2,times:6)2/59 -> 0.03389830508474576259Structure(lastDigte:2,times:7)2/69 -> 0.02898550724637681195Structure(lastDigte:2,times:8)2/79 -> 0.02531645569620253125 -> 253164556962*8=2025316455696Structure(lastDigte:2,times:9)2/89 -> 0.02247191011235954994Structure(lastDigte:3,times:1)3/9 -> 0.33333333333333331483 -> 3*1=3Structure(lastDigte:3,times:2)3/19 -> 0.15789473684210525439Structure(lastDigte:3,times:3)3/29 -> 0.10344827586206896408Structure(lastDigte:3,times:4)3/39 -> 0.07692307692307692735 -> 76923*4=307692Structure(lastDigte:3,times:5)3/49 -> 0.06122448979591836593Structure(lastDigte:3,times:6)3/59 -> 0.05084745762711864736Structure(lastDigte:3,times:7)3/69 -> 0.04347826086956521618Structure(lastDigte:3,times:8)3/79 -> 0.03797468354430379861 -> 379746835443*8=3037974683544Structure(lastDigte:3,times:9)3/89 -> 0.03370786516853932491Structure(lastDigte:4,times:1)4/9 -> 0.44444444444444441977 -> 4*1=4Structure(lastDigte:4,times:2)4/19 -> 0.21052631578947367252Structure(lastDigte:4,times:3)4/29 -> 0.13793103448275861878Structure(lastDigte:4,times:4)4/39 -> 0.10256410256410256054 -> 102564*4=410256Structure(lastDigte:4,times:5)4/49 -> 0.08163265306122448328Structure(lastDigte:4,times:6)4/59 -> 0.06779661016949152519Structure(lastDigte:4,times:7)4/69 -> 0.05797101449275362389Structure(lastDigte:4,times:8)4/79 -> 0.05063291139240506250 -> 506329113924*8=4050632911392Structure(lastDigte:4,times:9)4/89 -> 0.04494382022471909988Structure(lastDigte:5,times:1)5/9 -> 0.55555555555555558023 -> 5*1=5Structure(lastDigte:5,times:2)5/19 -> 0.26315789473684209065Structure(lastDigte:5,times:3)5/29 -> 0.17241379310344828735Structure(lastDigte:5,times:4)5/39 -> 0.12820512820512819374 -> 128205*4=512820Structure(lastDigte:5,times:5)5/49 -> 0.10204081632653061451Structure(lastDigte:5,times:6)5/59 -> 0.08474576271186440302Structure(lastDigte:5,times:7)5/69 -> 0.07246376811594203160Structure(lastDigte:5,times:8)5/79 -> 0.06329113924050633333 -> 632911392405*8=5063291139240Structure(lastDigte:5,times:9)5/89 -> 0.05617977528089887485Structure(lastDigte:6,times:1)6/9 -> 0.66666666666666662966 -> 6*1=6Structure(lastDigte:6,times:2)6/19 -> 0.31578947368421050879Structure(lastDigte:6,times:3)6/29 -> 0.20689655172413792816Structure(lastDigte:6,times:4)6/39 -> 0.15384615384615385469 -> 153846*4=615384Structure(lastDigte:6,times:5)6/49 -> 0.12244897959183673186Structure(lastDigte:6,times:6)6/59 -> 0.10169491525423729472Structure(lastDigte:6,times:7)6/69 -> 0.08695652173913043237Structure(lastDigte:6,times:8)6/79 -> 0.07594936708860759722 -> 759493670886*8=6075949367088Structure(lastDigte:6,times:9)6/89 -> 0.06741573033707864981Structure(lastDigte:7,times:1)7/9 -> 0.77777777777777779011 -> 7*1=7Structure(lastDigte:7,times:2)7/19 -> 0.36842105263157892692Structure(lastDigte:7,times:3)7/29 -> 0.24137931034482759673Structure(lastDigte:7,times:4)7/39 -> 0.17948717948717948789 -> 179487*4=717948Structure(lastDigte:7,times:5)7/49 -> 0.14285714285714284921Structure(lastDigte:7,times:6)7/59 -> 0.11864406779661017255Structure(lastDigte:7,times:7)7/69 -> 0.10144927536231884702Structure(lastDigte:7,times:8)7/79 -> 0.08860759493670886111 -> 886075949367*8=7088607594936Structure(lastDigte:7,times:9)7/89 -> 0.07865168539325842478Structure(lastDigte:8,times:1)8/9 -> 0.88888888888888883955 -> 8*1=8Structure(lastDigte:8,times:2)8/19 -> 0.42105263157894734505Structure(lastDigte:8,times:3)8/29 -> 0.27586206896551723755Structure(lastDigte:8,times:4)8/39 -> 0.20512820512820512109 -> 205128*4=820512Structure(lastDigte:8,times:5)8/49 -> 0.16326530612244896656Structure(lastDigte:8,times:6)8/59 -> 0.13559322033898305038Structure(lastDigte:8,times:7)8/69 -> 0.11594202898550724778Structure(lastDigte:8,times:8)8/79 -> 0.10126582278481012500 -> 1012658227848*8=8101265822784Structure(lastDigte:8,times:9)8/89 -> 0.08988764044943819975Structure(lastDigte:9,times:1)9/9 -> 1.00000000000000000000 -> 9*1=9Structure(lastDigte:9,times:2)9/19 -> 0.47368421052631576318Structure(lastDigte:9,times:3)9/29 -> 0.31034482758620690612Structure(lastDigte:9,times:4)9/39 -> 0.23076923076923078204 -> 230769*4=923076Structure(lastDigte:9,times:5)9/49 -> 0.18367346938775511167Structure(lastDigte:9,times:6)9/59 -> 0.15254237288135594208Structure(lastDigte:9,times:7)9/69 -> 0.13043478260869564855Structure(lastDigte:9,times:8)9/79 -> 0.11392405063291138889 -> 1139240506329*8=9113924050632Structure(lastDigte:9,times:9)9/89 -> 0.10112359550561797472Program ended with exit code: 0*/

一个整数,个位是4,把4移动到首位,则变为原来4倍,那么这个数是?相关推荐

  1. 编写一个类的方法,其输入参数为一个整数,输出为该整数各个位上的最大数字

    1. 编写一个类的方法,其输入参数为一个整数,输出为该整数各个位上的最大数字. import java.util.*;public class Main {public static int s(in ...

  2. 题目:输入一个整数a,其个位为第一位,十位为第二位,依次类推,计算a的偶数位的和奇数位的和。

    题目: 输入一个整数a,其个位为第一位,十位为第二位,依次类推,计算a的偶数位的和奇数位的和.例如200628,奇数位的和为8+6+0=14:偶数位的和为2+0+2=4.函数原型可参考此形式:void ...

  3. 给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零

    描述 给定一个整数,请将该数各个位上数字反转得到一个新数.新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2). 输入 输入共 1 行,一个整数N. ...

  4. java判断一个整数是否是水仙花数,所谓水仙花数是指一个3位数,其各个位上数字立方和等于其本身。例如: 153 = 1*1*1 + 3*3*3 + 5*5*5

    public class Zy01{ //编写一个main方法     public static void main(String[] args) { /*         判断一个整数是否是水仙花 ...

  5. 对数字求特征值是常用的编码算法,奇偶特征是一种简单的特征值。对于一个整数,从个位开始对每一位数字编号,个位是1号,十位是2号,以此类推。这个整数在第n位上的数字记作x,如果x和n的奇偶性相同,则记下一

    题目内容: 对数字求特征值是常用的编码算法,奇偶特征是一种简单的特征值.对于一个整数,从个位开始对每一位数字编号,个位是1号,十位是2号,以此类推.这个整数在第n位上的数字记作x,如果x和n的奇偶性相 ...

  6. 判断一个整数是否是水仙花数 || 编写程序,根据输入的月份和年份,求出该月的天数(1-12)|| 运算符的优先级问题 ||输出小写的a-z以及大写的Z—A||求出1-1/2+1/3-1/4…..1/

    判断一个整数是否是水仙花数,所谓水仙花数是指一个3位数,         其各个位上数字立方和等于其本身.例如: 153 = 1*1*1 + 5*5*5 + 3*3*3                 ...

  7. Java黑皮书课后题第2章:2.6(求一个整数各位数的和)读取一个0和1000之间的整数,并将给整数的各位数字相加

    2.6(求一个整数各位数的和)读取一个0和1000之间的整数,并将给整数的各位数字相加 题目 题目描述 运行示例 题目槽点与破题 题目槽点 破题 如何提取数字 代码块 方法评价 题目 题目描述 2.6 ...

  8. 17.判断一个整数是否是回文数

    回文数(或迴文數)是指一个像14641这样"对称"的数,即:将这个数的数字按相反的顺序重新排列后,所得到的数和原来的数一样. 判定一个正整数是否是一个回文数.例如12121是回文数 ...

  9. java一个整数加100是完全平方_Java计算一个数加上100是完全平方数,加上168还是完全平方数...

    题目:一个整数,它加上100后是一个完全平方数,加上168又是一个完全平方数,请问该数是多少? 程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足 ...

最新文章

  1. 线段树 ---- H. AND = OR (或和与的性质之1的个数 + 线段树)
  2. java高级应用:线程池全面解析
  3. 计算机求职意向范文,自我评价与求职意向范文3篇
  4. C语言指针与数组之间的恩恩怨怨
  5. Mr.J--JS学习(Clone)
  6. 计算机术语中英文对照表(流水线/微架构/体系结构/指令集)
  7. 【NeurIPS2020】Google点针图网络,Pointer Graph Networks
  8. Swift 语言快速入门
  9. AndroidStudio项目提交到github
  10. 远程桌面:6个最实用技巧
  11. ABB机器人切割铣削钻孔自动化加工应用
  12. 浅谈机器学习评估中的穿越问题
  13. kali linux2.0输入法,kali2.0 设置输入法 找了好久,亲测有效
  14. 计算机学院考研动员大会,计算机学院2018年考研动员大会顺利召开
  15. 一段集大成的thymeleaf代码
  16. 基本乐理知识——和弦
  17. 云南富宁港的建设之路
  18. shoppe项目08----购物车
  19. Binding几种绑定方式
  20. APP第一次请求HTTPS慢

热门文章

  1. 高校人员信息管理系统(Java课程设计,带图形界面版)
  2. 单片机节日彩灯实训报告_基于单片机的节日彩灯设计论文课程设计.doc
  3. Intellij IDEA中类实现接口方法的快捷键
  4. 【Rust日报】2021-08-30 如何来看待 unwrap
  5. java使用斑马打印机发送ZPL 参数说明
  6. 为什么要在项目中使用缓存呢?
  7. zadig安装部署接入k8s集群、ldap、jenkins、gitlab、项目配置管理、yaml模板管理
  8. BZOJ2295我爱你啊
  9. Lattics ——一款简单易用、好看强大的知识管理工具
  10. MD5密码破解(高额悬赏1000大洋)