def euler243(): target = 15499/94744 currentD = 1 nextFactor = 2 currFactorIndex = 0 currR = 1 while(currR>=target): print('Current index '+str(currFactorIndex)) print('Current D '+str(currentD)) currFactorIndex+=1 if(len(Euler.currPrimes)<=currFactorIndex): Euler.currPrimes = Euler.primesList(nextFactor*2,Euler.currPrimes) nextFactor = Euler.currPrimes[currFactorIndex] currentD*=nextFactor currR = naiveResilience(currentD) print('D'+str(currentD)) print('R'+str(currR))
def euler243Heuristic(): target = 15499/94744 currentD = 1 nextFactor = 2 currFactorIndex = 0 currR = 1 while(currR>=target or True): currFactorIndex+=1 if(len(Euler.currPrimes)<=currFactorIndex): Euler.currPrimes = Euler.primesList(nextFactor*2,Euler.currPrimes) nextFactor = Euler.currPrimes[currFactorIndex] currentD*=nextFactor currR = pseudoResilience(currFactorIndex) if(currR<target): print('Pseudo hit on Index '+str(currFactorIndex)) print(currentD) print(currR) print('D'+str(currentD)) print('R'+str(currR))
print(currentD) print(currR) print('D'+str(currentD)) print('R'+str(currR)) def pseudoResilience(primeN): currentR = 1 for i in range(0,primeN+1): currentR*=((Euler.currPrimes[i])-1)/(Euler.currPrimes[i]) return currentR CurrentWildcardLists = [[]] PossibleChars = ['1','2','3','4','5','6','7','8','9','0','*'] Euler.primesList(100000,Euler.currPrimes) print('sdf') def starifiedList(stars,num): if(stars==1): starOne = [] for i in range(0,len(str(num))): starOne.append(str(num)[0:i]+"*"+str(num)[i+1:]) return starOne lastStarified = starifiedList(stars-1,num) for currLast = #todo loop through and whatever