There can be only 1!
C++11
Further small update: Do much less adding, and try all numbers of form A*B+C. I believe that, within the time limit, this is fairly close to optimal, assuming you only use +
, *
and !
. I leave other operators to people with more time than me!
Small update: Try harder to make use of factorials and numbers like 11....111. Also fixed bug that I wasn't counting !
in my costing
New result:
Primary Score = 3,810,660
Secondary Score = 12/09/2016 20:00
2532 1
s, 1505 operators.
Various tricks put together. My program starts by setting the shortest program for all factorials and numbers of the form 111..111 (I don't think this falls foul of the hard-wiring rule, as these are the shortest ways to make these numbers. I could rearrange my code so I check these patterns in my dynamic programming if you want). Then do a partial dynamic programming approach, trying various forms:
- A + B
- A*B + C
- A! + B
- 11....11 + B
Unfortunately I can't try all the ways of decomposing a number, so I choose for factorial and 11...11 to only try the nearest number, for A+B to try things near A/2, and for A*B+C to try only quite small As.
It would be easy to extend this to try some '-'s, by trying to overshoot slightly sometimes (particular in A*B - C), but I quite like only trying to grow.
Also, it is very hard to optimise the optimisation condition (I don't like it!) because in principle you can't come up with a 'best' value for each number in isolation, you have to consider your set of answers globally (which I don't intend to do).
Warning: This program needs a 64-bit machine, and around 10GB of memory (as I inefficiently make a giant array for all partially-computed results).
Program:
#include <algorithm>
#include <vector>
#include <string>
#include <assert.h>
#include <iostream>
#include <cmath>
std::vector<int> numints;
std::vector<int> numops;
std::vector<std::string> strings;
void fill_all_ones(long maxval)
{
int val = 1;
int len = 1;
std::string name = "1";
while(val < maxval) {
val = val * 10 + 1;
len++;
name = name + "1";
numints[val] = len;
strings[val] = name;
}
}
void get_best_for_next_full(long i);
// let's just assume this is the best way to make factorials
void fill_all_factorials(long maxval)
{
// skip 1 and 2
long result = 6;
long val = 3;
while(result < maxval) {
get_best_for_next_full(val);
strings[result] = "(" + strings[val] + ")!";
numints[result] = numints[val];
numops[result] = numops[val] + 1;
val++;
result = result * val;
}
}
long get_nearest_all_ones(long i)
{
int val = 11;
int prevval = 1;
while(val < i) {
prevval = val;
val = val * 10 + 1;
}
return prevval;
}
long get_nearest_factorial(long i)
{
int val = 6;
int prevval = 2;
int step = 3;
while(val < i) {
prevval = val;
step++;
val = val * step;
}
return prevval;
}
int getlen(long i);
void get_best_for_next_full(long i)
{
if(numints[i] > 0)
return;
int best = INT_MAX; // we'll do better than this
std::string beststring = "invalid2";
int ones = -1;
int ops = -1;
for(long loop = 1; loop <= i/2; loop++)
{
int new_val = getlen(loop) + getlen(i - loop);
if(new_val < best) {
best = new_val;
ones = numints[loop] + numints[i - loop];
beststring = "(" + strings[loop] + "+" + strings[i - loop] + ")";
ops = numops[loop] + numops[i - loop] + 1;
}
}
for(long loop = 2; loop * loop <= i; loop++)
{
long divisor = i / loop;
long rem = i - loop*divisor;
assert(rem >= 0);
int new_val;
if(rem == 0)
{
new_val = getlen(divisor) + getlen(loop);
}
else
{
new_val = getlen(divisor) + getlen(rem) + getlen(loop);
}
if(new_val < best) {
best = new_val;
if(rem == 0) {
ones = numints[divisor] + numints[loop];
beststring = "(" + strings[divisor] + "*" + strings[loop] + ")";
ops = numops[divisor] + numops[loop] + 1;
} else {
ones = numints[divisor] + numints[loop] + numints[rem];
beststring = "(" + strings[divisor] + "*" + strings[loop] + "+" + strings[rem] + ")";
ops = numops[divisor] + numops[loop] + numops[rem] + 2;
}
}
}
numints[i] = ones;
strings[i] = beststring;
numops[i] = ops;
}
void check_divising(const long i, const long loop, long& best, long& ones, std::string& beststring, long& ops);
void check_adding(const long i, const long loop, long& best, long& ones, std::string& beststring, long& ops);
void get_best_for_next_partial(long i)
{
if(numints[i] > 0)
return;
long best = INT_MAX; // we'll do better than this
long ones = 1;
std::string beststring = "invalid";
long ops = 1;
// Special: Try a nearby all ones
{
long loop = get_nearest_all_ones(i);
check_adding(i, loop, best, ones, beststring, ops);
}
// Special: Try nearest factorial
{
long loop = get_nearest_factorial(i);
check_adding(i, loop, best, ones, beststring, ops);
}
for(long loop = 2; loop * loop <= i; loop++)
{
check_divising(i, loop, best, ones, beststring, ops);
}
numints[i] = ones;
strings[i] = beststring;
numops[i] = ops;
}
void check_adding(const long i, const long loop, long& best, long& ones, std::string& beststring, long& ops)
{
int new_val = getlen(loop) + getlen(i - loop);
if(new_val < best) {
best = new_val;
ones = numints[loop] + numints[i - loop];
beststring = "(" + strings[loop] + "+" + strings[i - loop] + ")";
ops = numops[loop] + numops[i - loop] + 1;
}
}
void check_divising(const long i, const long loop, long& best, long& ones, std::string& beststring, long& ops)
{
long divisor = i / loop;
long rem = i - loop*divisor;
assert(rem >= 0);
int new_val;
if(rem == 0)
{
new_val = getlen(divisor) + getlen(loop);
}
else
{
new_val = getlen(divisor) + getlen(rem) + getlen(loop);
}
if(new_val < best) {
best = new_val;
if(rem == 0) {
ones = numints[divisor] + numints[loop];
beststring = "(" + strings[divisor] + "*" + strings[loop] + ")";
ops = numops[divisor] + numops[loop] + 1;
}
else {
ones = numints[divisor] + numints[loop] + numints[rem];
beststring = "(" + strings[divisor] + "*" + strings[loop] + "+" + strings[rem] + ")";
ops = numops[divisor] + numops[loop] + numops[rem] + 2;
}
}
}
long count = 0;
long countops = 0;
const int little_cutoff = 200000;
int getlen(long i)
{
if(numints[i] == 0) {
if(i < little_cutoff)
get_best_for_next_full(i);
else
get_best_for_next_partial(i);
}
if(numints[i] == 0) {
std::cout << i << " failure!" << numops[i] << ":" << strings[i] << std::endl;
exit(1);
}
return numints[i] + numops[i];
}
const std::vector<long> vals = {945536, 16878234, 32608778, 42017515, 48950830, 51483452, 52970263, 54278649, 63636656, 78817406, 89918907, 90757642, 95364861, 102706605, 113965374, 122448605, 126594161, 148064959, 150735075, 154382918, 172057472, 192280850, 194713795, 207721209, 220946392, 225230299, 227043979, 241011012, 248906099, 249796314, 250546528, 258452706, 276862988, 277140688, 280158490, 286074562, 308946627, 310972897, 322612091, 324445400, 336060042, 346729632, 349428326, 352769482, 363039453, 363851029, 392168304, 401975104, 407890409, 407971913, 425780757, 459441559, 465592122, 475898732, 482826596, 484263150, 506235403, 548951531, 554295842, 580536366, 587051904, 588265985, 588298051, 590968352, 601194306, 607771869, 618578932, 626776380, 667919873, 681786366, 689854904, 692055400, 697665495, 711608194, 734027104, 750869335, 757710567, 759967747, 777616154, 830071127, 833809927, 835873060, 836438554, 836945593, 863728236, 864158514, 871273503, 881615667, 891619600, 897181691, 918159061, 920521050, 924502226, 929983535, 943162304, 950210939, 950214176, 962610357, 974842859, 988572832};
const long biggest = 988572832;
int main(void)
{
numints.push_back(2);
strings.push_back("(1-1)");
numops.push_back(1);
numints.push_back(1);
strings.push_back("1");
numops.push_back(0);
numints.push_back(2);
strings.push_back("(1+1)");
numops.push_back(1);
numints.resize(biggest + 1);
strings.resize(biggest + 1);
numops.resize(biggest + 1);
fill_all_ones(biggest);
fill_all_factorials(biggest);
for(long i = 0; i < little_cutoff; ++i)
get_best_for_next_full(i);
for(long v : vals) {
get_best_for_next_partial(v);
std::cout << v << ":" << strings[v] << "\n";
count += numints[v];
countops += numops[v];
}
std::cout << count << ":" << countops << ":" << count * countops << "\n";
}
Results:
945536:((1111*(1+(11+11))+(1+1))*((1+11)*(1+(1+1))+1)+1)
16878234:(((1+(1+1111))*(1+(1+(1+111)))+(11+11))*((1+11)*11+1)+(1+1))
32608778:((((((1+(1+1)))!+(111+11111))*(11*11)+111)*(1+11)+1)*(1+1))
42017515:((11)!+((((1+111)*11)*11+1)*((1+11)*(1+11)+11)))
48950830:((((11+11)*(1+11))+(11111*(1+(1+1))))*((1+111)*(1+(1+11))+1)+1)
51483452:(((1+(1+1111))*(1+111)+1)*(11+(((1+11)*11+(1+1))*(1+(1+1))))+111)
52970263:((11+((1111*11+(1+(1+1)))*(1+(1+1))))*(111*(1+(1+11))+1)+11)
54278649:((11)!+(((1+(11+(11+(11+1111))))*111+1)*(1+(1+111))+1))
63636656:((((11+111)*(1+(1+1)))*(1+111)+11)*(1+(111+((((1+(1+1)))!)!*(1+1)))))
78817406:(((((111*(11+11)+1)*(1+1))*(1+111)+111)*(1+11)+1)*(1+11)+(1+1))
89918907:(((111+((1+(1+((1+(1+1)))!)))!)*(1+1))*(1+1111)+((11*11)*(1+(1+1))))
90757642:((1111+((11+11111)*(1+1)))*(111*(11+((1+(1+(1+1))))!)+1)+(1+111))
95364861:((11)!+(((((((11+11)*11)+11111)*111)*11+(1+1))*(1+1))*(1+1)+1))
102706605:(((11)!+(((111+((11*11)*11))*(1+(((1+(1+1)))!)!))*11))*(1+1)+1)
113965374:((((111*(1+(1+(1+11))))*1111+((1+(11+11))*11+1))*11+1)*((1+(1+1)))!)
122448605:(((((1+(1+1)))!)!+((111*11)*11))*((1+(((1+(1+1)))!)!)*(1+11)+1)+(1+1))
126594161:(((((11*11)+(((1+(1+1)))!)!)*(1+111))*(1+11)+1)*(1+111)+1)
148064959:((11)!+(((111*111+(1+11))*111+1)*((1+(1+11))*((1+(1+1)))!+1)+(1+(1+1))))
150735075:(((111*111+(1+1))*(1+1111)+(1+11))*11+(1+((1+(1+1)))!))
154382918:((1111*(1+11)+1)*(((1+(11+(111+111)))*(1+1))+11111)+111)
172057472:((((((1+11)*11)*11+1)*(1+(1+1)))+11111)*(11+11111)+((1+11)*11))
192280850:(((11111*(1+11)+11)*(1+(((1+(1+1)))!)!)+(11+111))*(1+1))
194713795:((11)!+((((111+11111)*(1+(1+(1+111)))+((1+(1+1)))!)*11)*11+1))
207721209:(((111*111)*(1+(11+11))+(1+1))*(1+(1+(11+(((1+(1+1)))!)!)))+(1+(1+(1+1))))
220946392:((11)!+((((1+(1+(1+1111)))*(11+111))*111+11)*(1+11)+(1+(1+(1+1)))))
225230299:((111111111+((111*111+(1+((1+(1+1)))!))*(11+111)+(11+11)))*(1+1)+1)
227043979:((((((11+11)*11)+11111)*(1+(1+1))+1)*1111+(1+(1+1)))*((1+(1+1)))!+1)
241011012:(((11)!+((11)!+((11)!+((11+1111)*((1+111)*((1+(1+1)))!+1)))))*(1+1))
248906099:(((11111+(((((1+(1+1)))!)!*111)*(1+1)))*(1+111)+111)*(1+(1+11)))
249796314:(((11)!+(((((1+(1+1)))!)!+((1+1111)*(1+11)))*(11+111)+111))*((1+(1+1)))!)
250546528:((11)!+(((111*111)*(1+(1+(1+11)))+11)*(111*11)+(1+(11+1111))))
258452706:(((11)!+(((((1+(1+1)))!)!*((1+(1+1)))!+1)*(11+(((1+(1+1)))!)!)))*((1+(1+1)))!)
276862988:(((11+(1111*(1+1)))*(((1+(1+1)))!+1111))*111+(((1+(1+1)))!+11))
277140688:(((111*111+(1+(1+(1+(1+11)))))*(1+1))*(11+(111+11111))+(1+111))
280158490:((11)!+(((1+(111+111111))*(((1+(1+1)))!)!+(1+(1+1)))*(1+(1+1))+1))
286074562:(((11)!+((((11+1111)*(11+11))*(1+1)+1)*(1+(11+1111))))*(1+(1+1))+1)
308946627:((11)!+((((1+1111)*(((1+(1+1)))!)!+((11+11)*(1+1)))*(1+111)+1)*(1+(1+1))))
310972897:((11111*(1+(1+1))+1)*(((1111+(111*11))*(1+1))*(1+1)+1)+11)
322612091:((((((1+11)*(1+11))*(1+11)+(1+1))*111+1)*(1+111))*(1+(1+(1+(1+11))))+11)
324445400:(((1111111+(1+(1+1)))*(1+1))*((1+11)*(1+11)+(1+1))+(1+111))
336060042:(((1+1111)*(1+(11+111))+(1+111))*(11+((111*11+1)*(1+1)))+(1+1))
346729632:(((1+(1+(11111+(111*111))))*((1+111)*11+1)+(1+(1+(1+11))))*(1+11))
349428326:(((((11+11)*11)*11+1)*(1+1111)+1)*(1+(((1+(1+1)))!+111)))
352769482:(((1+11111)*(111*(11+11))+((11+111)*((1+1)*(1+1)+1)))*(1+(1+11)))
363039453:(((((1+111)*(1+111)+1)*(1+1))*(1+(1+11))+11)*(1+(1+1111)))
363851029:((((111*11+1)*1111+11)*((1+11)*11+(1+1))+(1+11))*(1+1)+1)
392168304:(((((1+(1+1111))*(1+111))*11+1)*(1+(1+11))+11)*(11+11))
401975104:(((((1+11)*(1+11)+1)*111)*111+11)*((1+111)*(1+1)+1)+(1+(1+(1+1))))
407890409:(((1+11111)*11)*((1+1111)*(1+(1+1))+1)+((1+1111)*(1+1)+1))
407971913:((11)!+((11)!+(((1+(1+11111))*(1+1)+1)*(((11+111)*11)*11+1)+(1+1111))))
425780757:(((1111+((((1+11)*11)+11111)*(1+(1+1))))*11+1)*1111+((1+(1+1)))!)
459441559:(((11111+(((1+(1+111))*(1+1)+1)*111))*111+1)*(1+(1+(1+111)))+(1+(1+11)))
465592122:(((11)!+((((1111*(11*(1+(1+1))+1)+1)*(1+(11+11)))*(1+1)+1)*111))*(1+1))
475898732:(((11)!+(((((1+111)*11+(1+1))*(1+11))*(1+1)+1)*(1+(1+111))))*11+1)
482826596:(((1+(((111*11)*11)+(11111*(1+1))))*111+1)*(11+111)+((1+(1+1)))!)
484263150:(((111*111+(1+(1+1)))*111+11)*(1+(111+((11+11)*11))))
506235403:(((1+11))!+((((1+(1+1111))*(1+1111)+((11+111)*(1+1)))*11+1)*(1+1)+1))
548951531:((((111+111)*(1+1)+1)*111+11)*11111+((11+111)*(1+11)+1))
554295842:(((1+11))!+((((1+1111)*111+1)*((1+1)*(1+1)+1))*(11+111)+(1+111)))
580536366:(((1+(111+((111*111+11)*(1+11))))*(1+111)+1)*(11+((1+(1+(1+1))))!)+11)
587051904:(((((1+1111)*(1+11))*(1+(1+1))+1)*(111*11+1)+(111*((1+(1+1)))!))*(1+11))
588265985:(((1+11))!+((1+(111+(1111*(1+(1+11)))))*((1+111)*(11*((1+(1+1)))!+1)+(1+(1+1)))))
588298051:((((((11+111)*11)*11)+(11111*(1+(1+1))))*(1+1111)+1)*11)
590968352:(((((((1+(1+1)))!)!+11111)*111+(11+11))*((1+111)*(1+1)+1)+1)*(1+1))
601194306:((((1111*(1+(1+(1+(11+111))))+1)*111+(1+1))*(1+(1+1))+1)*(1+(1+11))+11)
607771869:(((1+11))!+(((11)!+(((1111*11+1)*(1+1))*(1+(11+111))+11))*(1+(1+1))))
618578932:(((((1111*111)*11+1)*(1+1)+1)*(1+1))*(1+(1+(1+111)))+(1+111))
626776380:((((1+(1+(1+1))))!+((((1+(1+1)))!)!+(1111*111)))*(1+(11+((1+((1+(1+1)))!))!)))
667919873:((((((1+(11+111))*11+1)*111+(1+(1+1)))*1111+1)*(1+1))*(1+1)+1)
681786366:(((1+11))!+((11)!+(((11)!+((11)!+((1+(1+11111))*((1+11)*(1+11))+111)))*(1+1))))
689854904:(((11+((11111+((1+1111)*11))*(1+1)))*((11+111)*11+1)+11)*11+(1+1))
692055400:(((1+11))!+(((((1+(1+111))*(1+(1+(1+11))))*11)*11+1)*(1+(1+1111))+1))
697665495:(((1+11))!+(((((((1+(1+1)))!)!*(1+(1+(1+111)))+1)*(1+11))*(1+1)+1)*111))
711608194:(((11)!+(((1+(1+(1+(1+1111))))*(11+((11+111)*(1+1)))+(1+1))*1111))*(1+1))
734027104:(((111*(11+((1+(1+(1+1))))!)+1)*(((1+(1+1)))!+11)+1)*11111+1111)
750869335:((11111111+((1+(((1+(1+1)))!)!)*((1+11)*11+1)+1))*(11*((1+(1+1)))!+1))
757710567:((((((11+111)*11)+111111)*(1+(1+1))+1)*(1+(11+1111))+(1+(1+1)))*(1+1)+1)
759967747:(((11)!+(((1+(1+(111+11111)))*(1+(1+111)))*(1+(11+11))+1))*11)
777616154:((11111*(111+(((111*11+1)*(1+1))*(1+1)))+(11+111))*(1+(1+(1+11))))
830071127:((((1+111)*111)*((1+(1+1)))!+1)*(((1+(1+1)))!+(11+11111))+(111*(1+1)+1))
833809927:((((11+1111)*(1+1)+1)*111+1)*(1+(1+(11+(1111*(1+(1+1))))))+111)
835873060:(((((11+(111+111))*111+1)*(1+(1+111))+1)*(1+(1+11))+1)*(11+11))
836438554:(((1+11))!+(((11111*(1+1)+1)*((11+(((1+(1+1)))!)!)*11+1)+1111)*(1+1)))
836945593:(((1111*1111+(1+111))*(1+(1+111))+(1+(1+1)))*((1+(1+1)))!+1)
863728236:(((1+(1111+((11+11111)*(1+1))))*(111*111+((1+(1+1)))!))*(1+(1+1)))
864158514:(((1+11))!+(((1111*(1+(1+(1+11)))+((1+(1+1)))!)*111+1)*(111*(1+1)+1)+11))
871273503:((((1+11111)*(11+11)+1)*((1+(1+11))*(1+1)+1)+1)*((1+11)*11)+111)
881615667:((11111+((111*111+11)*(1+1)))*((111*111)*(1+1)+1)+((11+1111)*11))
891619600:(((11)!+((11)!+((((1+(11+11))*(1+1))+111111)*11)))*11+(1+(1+1)))
897181691:((11+(11+(11+((1+(1+((1+(1+1)))!)))!)))*(11+(11111*(1+1)))+((111*11+1)*11))
918159061:(((11)!+(((11+11)*11+1)*(1+(1+11))))*(1+(11+11))+(1+(1+(1+1))))
920521050:(((11)!+((((1+(11+1111))*(1+(1+(1+1111))))*(1+111)+111)*(1+(1+1))))*(1+1))
924502226:((((1111*(1+11))*(1+1)+1)*((111*(1+11)+1)*(1+1)+1))*(1+(1+11))+11)
929983535:(((11)!+((((11+111)*111+1)*111)*((1+11)*(1+1)+1)+(1+1)))*(1+11)+11)
943162304:(((11)!+((((((1+((1+(1+1)))!))!+(111*111))*111+(1+1))*(1+111))*(1+1)))*(1+1))
950210939:(((11+(111+11111))*(1+(1+(1+(((1+(1+1)))!)!)))+(1+1))*(((1+(1+1)))!+111)+(1+1))
950214176:(((11)!+((((111*111)*(1+(1+11)))*11+1)*((1+(11+111))*(1+1)+1)))*(1+1))
962610357:((((1+11))!+((1+((((1+(1+1)))!)!+(111*(1+11))))*(11+1111)+(1+111)))*(1+1)+1)
974842859:((((((11*(1+((1+(1+1)))!))+1111)*11+1)*(1+111))*((1+(1+1)))!)*111+11)
988572832:(((111111111+((11111*(1+(1+1111))+11)*11+(1+(1+1))))*(1+1))*(1+1))
Haskell
Primary score: 27242281
Secondary score: 12/09/2016 09:01
11891 1
's, 2291 operators
import Data.List
nums = iterate (\x -> x*10+1) 1
g n | n > a = show a ++ "+(" ++ g (n-a) ++ ")"
| n < a = show a ++ "-(" ++ g (a-n) ++ ")"
| otherwise = show a
where a = minimumBy (\x y -> compare (abs$x-n) (abs$y-n))
. take 2 . reverse
$ takeWhile (<=n*10) nums
It basically finds the shortest way to make it using only + and -
Output:
945536: 1111111-(111111+(11111+(11111+(11111+(11111+(11111-(1111-(11+(11-(1+(1)))))))))))
16878234: 11111111+(1111111+(1111111+(1111111+(1111111+(1111111+(111111+(111111-(11111-(111+(111+(111+(111+(11+(1+(1)))))))))))))))
32608778: 11111111+(11111111+(11111111-(1111111-(111111+(111111+(111111+(11111+(11111+(11111+(11111+(11111-(1111+(1111+(111-(1)))))))))))))))
42017515: 11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(111111+(111111-(11111+(11111-(1111+(1111+(1111+(1111+(111+(111+(11+(11+(11+(11-(1+(1+(1))))))))))))))))))))))
48950830: 11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(111111-(11111+(11111+(11111+(11111+(1111+(1111+(1111+(1111+(111+(111+(11+(11+(11+(11+(11+(1+(1+(1+(1)))))))))))))))))))))))))))
51483452: 11111111+(11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(1111111+(1111111-(111111+(111111+(111111+(11111+(11111+(11111+(1111+(1111+(1111+(1111+(1111+(111+(11-(1+(1)))))))))))))))))))))))
52970263: 11111111+(11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(111111+(111111+(111111+(11111+(11111+(11111-(1111+(1111+(1111+(111+(111+(11+(11+(11+(11-(1+(1+(1))))))))))))))))))))))))
54278649: 11111111+(11111111+(11111111+(11111111+(11111111-(1111111+(111111+(11111+(11111+(11111+(11111+(11111-(1111-(111+(111+(11+(11-(1+(1+(1+(1))))))))))))))))))))
63636656: 111111111-(11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111-(111111+(111111+(111111-(11111+(11111+(11111-(1111+(1111+(1111-(11)))))))))))))))))
78817406: 111111111-(11111111+(11111111+(11111111-(1111111-(111111-(11111+(11111+(11111+(11111-(1111+(1111+(1111+(1111+(111+(111+(111+(11+(11+(11+(11-(1+(1+(1+(1+(1)))))))))))))))))))))))))
89918907: 111111111-(11111111+(11111111-(1111111-(111111-(11111+(11111+(11111-(1111+(1111+(1111-(11+(11-(1+(1+(1+(1))))))))))))))))
90757642: 111111111-(11111111+(11111111-(1111111+(1111111-(111111+(111111+(111111+(11111+(11111-(1111+(1111-(111+(11+(11+(1+(1+(1)))))))))))))))))
95364861: 111111111-(11111111+(1111111+(1111111+(1111111+(1111111+(111111+(111111-(11111+(11111+(11111-(1111+(1111-(111+(111+(111+(111-(11+(11+(11-(1+(1+(1+(1+(1))))))))))))))))))))))))
102706605: 111111111-(11111111-(1111111+(1111111+(111111+(111111+(111111+(111111+(11111+(11111+(11111+(11111-(1111+(1111+(1111+(1111+(111-(11+(11+(11+(11+(11-(1+(1+(1+(1+(1))))))))))))))))))))))))))
113965374: 111111111+(1111111+(1111111+(1111111-(111111+(111111+(111111+(111111+(11111+(11111+(11111+(1111+(111+(111-(11+(11+(11+(11-(1+(1+(1+(1)))))))))))))))))))))
122448605: 111111111+(11111111+(111111+(111111+(1111+(1111+(1111+(1111-(111+(111+(111-(11+(11+(11+(11+(11-(1+(1+(1+(1+(1))))))))))))))))))))
126594161: 111111111+(11111111+(1111111+(1111111+(1111111+(1111111-(111111-(11111+(11111+(11111+(1111+(1111+(1111+(1111+(1111-(111+(111+(11+(11+(11+(11+(11+(1+(1+(1+(1+(1))))))))))))))))))))))))))
148064959: 111111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111+(111111+(111111+(111111-(11111+(11111+(11111+(11111+(1111+(111+(111+(111+(111+(111+(11+(11+(11+(11-(1+(1+(1))))))))))))))))))))))))))
150735075: 111111111+(11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(1111111+(1111111+(111111+(111111+(111111+(11111+(11111+(11111+(11111-(1111+(1111-(111+(111+(111+(111+(11+(11+(11+(1+(1+(1+(1))))))))))))))))))))))))))))
154382918: 111111111+(11111111+(11111111+(11111111+(11111111-(1111111+(111111-(11111+(11111+(11111+(11111+(1111+(1111+(1111+(1111+(1111-(111+(111+(111+(111-(11+(11+(11-(1+(1+(1)))))))))))))))))))))))))
172057472: 111111111+(11111111+(11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(1111111-(111111+(11111+(11111+(11111+(11111+(11111-(1111+(1111-(111+(111+(111-(11+(11+(11-(1+(1+(1+(1+(1)))))))))))))))))))))))))))))
192280850: 111111111+(111111111-(11111111+(11111111+(11111111-(1111111+(1111111+(1111111+(11111+(11111+(11111+(11111+(11111+(1111+(1111+(1111-(111+(111+(11+(11+(11+(1+(1+(1+(1+(1)))))))))))))))))))))))))
194713795: 111111111+(111111111-(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(1111111-(111111+(111111+(11111+(11111+(11111+(11111+(1111+(1111+(111+(111+(111+(111+(11+(11-(1+(1+(1+(1))))))))))))))))))))))))))
207721209: 111111111+(111111111-(11111111+(1111111+(1111111+(1111111+(11111+(11111+(11111+(11111+(11111+(1111-(111-(11+(1+(1+(1))))))))))))))))
220946392: 111111111+(111111111-(1111111+(111111+(11111+(11111+(11111+(11111+(11111-(1111+(1111-(111+(111+(11+(11+(11+(11+(11-(1+(1)))))))))))))))))))
225230299: 111111111+(111111111+(1111111+(1111111+(1111111-(111111+(111111+(111111-(11111-(1111+(1111+(1111-(111+(111+(111-(11+(11+(11+(1))))))))))))))))))
227043979: 111111111+(111111111+(1111111+(1111111+(1111111+(1111111+(111111+(111111+(111111+(11111+(11111+(11111+(11111-(111+(111+(111+(111+(11+(11-(1+(1))))))))))))))))))))
241011012: 111111111+(111111111+(11111111+(11111111-(1111111+(1111111+(1111111+(111111-(11111-(111-(11+(1)))))))))))
248906099: 111111111+(111111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(11111+(1111+(1111+(1111+(1111+(1111+(111+(111+(111+(111+(111-(11-(1))))))))))))))))))))
249796314: 111111111+(111111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(1111111-(111111+(111111-(11111+(11111-(1111+(1111+(1111+(111+(111+(111+(11+(11-(1+(1+(1)))))))))))))))))))))))
250546528: 111111111+(111111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(1111111+(111111+(111111+(111111+(111111+(111111-(11111-(1111+(1111-(111+(11+(11+(1+(1+(1+(1)))))))))))))))))))))))
258452706: 111111111+(111111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111-(111111+(111111+(111111+(111111-(11111-(1111+(1111+(1111-(111+(111+(111+(111+(11+(11+(11+(11-(1+(1+(1+(1)))))))))))))))))))))))))))
276862988: 111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(11111111-(1111111-(111111+(111111-(11111+(11111+(1111+(1111+(1111+(111+(111+(111+(11+(1)))))))))))))))))))
277140688: 111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(11111111-(1111111-(111111+(111111+(111111+(111111+(11111+(11111+(11111-(1111+(1111+(1111+(111+(111+(111+(111-(11+(11)))))))))))))))))))))))
280158490: 111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(111111+(11111+(11111+(11111+(11111+(1111+(1111+(1111-(111+(111+(111+(111-(11+(11+(11+(11+(1+(1+(1)))))))))))))))))))))))))))
286074562: 111111111+(111111111+(111111111-(11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(111111+(111111+(111111+(111111+(111111+(11111+(11111+(11111+(1111+(1111+(1111-(111+(1+(1+(1+(1+(1)))))))))))))))))))))))))
308946627: 111111111+(111111111+(111111111-(11111111+(11111111+(1111111+(1111111-(11111+(11111+(11111+(11111+(11111+(1111+(1111-(11+(11+(11+(11-(1+(1+(1+(1+(1))))))))))))))))))))))
310972897: 111111111+(111111111+(111111111-(11111111+(11111111+(111111+(11111+(11111+(1111+(1111+(1111+(1111+(111+(111+(111+(111-(11-(1+(1+(1+(1))))))))))))))))))))
322612091: 111111111+(111111111+(111111111-(11111111-(111111+(111111+(111111+(11111+(11111+(11111+(11111+(11111+(1111-(111+(11+(11-(1+(1+(1))))))))))))))))))
324445400: 111111111+(111111111+(111111111-(11111111-(1111111+(1111111+(1111-(111+(11+(11+(11+(11)))))))))))
336060042: 111111111+(111111111+(111111111+(1111111+(1111111+(111111+(111111+(111111+(111111+(11111+(11111+(11111+(11111+(11111+(1111+(1111+(1111+(1111+(11+(11+(11+(11)))))))))))))))))))))
346729632: 111111111+(111111111+(111111111+(11111111+(1111111+(1111111+(111111-(11111+(11111+(11111+(11111+(1111+(1111+(1111+(111+(111+(111+(11+(11+(11+(1+(1)))))))))))))))))))))
349428326: 111111111+(111111111+(111111111+(11111111+(1111111+(1111111+(1111111+(1111111+(111111+(111111+(111111+(111111+(111111-(11111+(1111+(1111+(1111+(1111+(111+(111+(111+(111+(111+(11-(1+(1+(1+(1)))))))))))))))))))))))))))
352769482: 111111111+(111111111+(111111111+(11111111+(11111111-(1111111+(1111111+(111111+(111111+(111111+(111111+(111111+(11111-(1111+(1111+(111+(111+(111+(111+(111+(11+(11+(11+(1+(1+(1+(1+(1)))))))))))))))))))))))))))
363039453: 111111111+(111111111+(111111111+(11111111+(11111111+(11111111-(1111111+(1111111+(1111111+(111111+(111111+(111111-(11111+(11111+(11111+(11111-(1111+(1111+(1111+(1111+(111+(111+(111+(111+(111-(11-(1+(1+(1))))))))))))))))))))))))))))
363851029: 111111111+(111111111+(111111111+(11111111+(11111111+(11111111-(1111111+(1111111+(111111+(111111+(111111+(111111+(111111+(11111+(11111+(11111+(1111+(1111+(1111+(1111+(111-(11+(11+(11-(1+(1+(1+(1+(1))))))))))))))))))))))))))))
392168304: 111111111+(111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111-(11111+(11111+(11111+(11111+(11111-(1111+(111+(111+(111+(111+(111-(11+(11+(11-(1+(1+(1+(1+(1)))))))))))))))))))))))))))))
401975104: 111111111+(111111111+(111111111+(111111111-(11111111+(11111111+(11111111+(11111111-(1111111+(1111111-(111111+(111111+(11111+(11111+(1111+(1111+(111+(111+(111+(111+(11-(1+(1+(1)))))))))))))))))))))))
407890409: 111111111+(111111111+(111111111+(111111111-(11111111+(11111111+(11111111+(1111111+(1111111+(1111111-(111111+(1111+(111+(111+(111+(111-(11+(11+(11+(1+(1))))))))))))))))))))
407971913: 111111111+(111111111+(111111111+(111111111-(11111111+(11111111+(11111111+(1111111+(1111111+(1111111-(111111+(111111-(11111+(11111+(1111+(1111+(1111+(1111+(1111+(111+(111+(111-(11+(11+(1))))))))))))))))))))))))
425780757: 111111111+(111111111+(111111111+(111111111-(11111111+(11111111-(1111111+(1111111+(1111111+(111111+(111111+(1111+(1111+(1111-(111+(111+(111+(11+(11-(1+(1))))))))))))))))))))
459441559: 111111111+(111111111+(111111111+(111111111+(11111111+(1111111+(1111111+(1111111+(111111+(111111+(111111+(111111+(111111-(1111+(1111+(1111-(111+(111+(111+(111+(1+(1+(1+(1+(1))))))))))))))))))))))))
465592122: 111111111+(111111111+(111111111+(111111111+(11111111+(11111111-(1111111-(11111+(11111+(11111+(1111+(1111+(1111-(111-(11+(1)))))))))))))))
475898732: 111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111-(1111111+(1111111-(111111+(111111+(111111+(11111-(1111+(111+(11+(11+(11+(11+(1)))))))))))))))))))
482826596: 111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(111111+(111111+(111111+(111111+(111111+(11111+(11111+(11111+(11111+(1111+(1111+(1111+(1111-(111-(11+(11+(11+(11-(1)))))))))))))))))))))))))))))
484263150: 111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(1111111+(1111111+(111111+(111111-(11111+(11111+(11111+(11111-(1111+(1111+(1111+(111+(111-(11+(11+(11+(11-(1+(1+(1+(1+(1)))))))))))))))))))))))))))))))
506235403: 111111111+(111111111+(111111111+(111111111+(111111111-(11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(111111+(111111+(111111+(111111-(11111+(1111+(1111-(111+(11+(11+(11+(11-(1+(1))))))))))))))))))))))))))
548951531: 111111111+(111111111+(111111111+(111111111+(111111111-(11111111-(1111111+(1111111+(1111111+(1111111+(111111-(11111+(11111+(11111+(11111+(1111+(1111+(1111+(1111-(111+(111+(111+(111-(11+(11+(1+(1))))))))))))))))))))))))))
554295842: 111111111+(111111111+(111111111+(111111111+(111111111-(1111111+(111111+(11111+(11111+(11111+(1111+(1111+(1111+(1111-(111+(111+(111-(11+(11+(11+(11+(1+(1+(1)))))))))))))))))))))))
580536366: 111111111+(111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(1111111+(1111111+(111111+(111111+(111111+(111111+(111111-(11111+(11111-(1111+(1111+(1111-(111+(111+(111-(11+(11+(11+(1)))))))))))))))))))))))))
587051904: 111111111+(111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111-(1111111+(1111111-(111111+(111111+(111111+(11111+(11111+(11111+(11111+(11111-(1111+(1111+(1111+(111+(111+(111-(11+(1+(1+(1+(1+(1)))))))))))))))))))))))))))))
588265985: 111111111+(111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111-(1111111-(111111+(111111+(111111+(111111+(11111+(11111+(11111+(11111-(1111-(111+(111+(111+(111-(11+(1+(1))))))))))))))))))))))))
588298051: 111111111+(111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111-(111111+(111111+(111111+(111111+(111111+(11111+(11111+(11111+(1111+(1111-(111+(111+(11+(11+(11+(11+(11-(1+(1+(1+(1))))))))))))))))))))))))))))
590968352: 111111111+(111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111+(1111111+(1111111-(111111+(11111+(11111+(11111-(1111+(111+(111+(111+(111+(111+(11+(11-(1+(1)))))))))))))))))))))))
601194306: 111111111+(111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(1111111+(111111-(11111+(11111+(1111+(1111+(1111+(1111+(1111+(111+(11+(11+(1+(1+(1+(1+(1)))))))))))))))))))))))))
607771869: 111111111+(111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(1111111+(1111+(1111+(1111+(1111+(1111+(111+(111+(111+(11+(11-(1+(1))))))))))))))))))))))))
618578932: 1111111111-(111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111+(111111+(111111+(111111-(11111+(11111+(1111+(11+(11+(11+(11-(1+(1)))))))))))))))))))))))
626776380: 1111111111-(111111111+(111111111+(111111111+(111111111+(11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(1111111+(1111111+(111111-(1111+(111+(111+(111-(11+(11+(11+(11+(1+(1)))))))))))))))))))))))
667919873: 1111111111-(111111111+(111111111+(111111111+(111111111-(1111111+(111111+(11111+(11111+(11111-(1111+(1111+(111+(11+(1+(1+(1+(1+(1))))))))))))))))))
681786366: 1111111111-(111111111+(111111111+(111111111+(111111111-(11111111+(1111111+(1111111+(1111111+(1111111-(111111+(111111+(111111+(111111-(11111-(1111+(1111+(111+(111+(111-(11+(11+(11-(1)))))))))))))))))))))))
689854904: 1111111111-(111111111+(111111111+(111111111+(111111111-(11111111+(11111111+(1111111-(111111+(11111+(11111+(11111+(1111-(111+(111+(111+(111+(11+(1+(1+(1+(1)))))))))))))))))))))
692055400: 1111111111-(111111111+(111111111+(111111111+(111111111-(11111111+(11111111+(1111111+(1111111+(1111111-(111111+(11111+(11111+(11111+(11111+(11111+(111+(11+(11+(11+(11+(1)))))))))))))))))))))
697665495: 1111111111-(111111111+(111111111+(111111111+(111111111-(11111111+(11111111+(11111111-(1111111+(1111111+(111111+(1111+(111-(11+(11+(11+(11+(11-(1+(1+(1+(1+(1))))))))))))))))))))))
711608194: 1111111111-(111111111+(111111111+(111111111+(111111111-(11111111+(11111111+(11111111+(11111111+(111111+(111111+(111111+(111111+(11111+(11111+(11111+(11111+(11111-(1111+(1111+(1111-(111+(111+(111+(111-(11+(11+(1+(1+(1+(1+(1)))))))))))))))))))))))))))))))
734027104: 1111111111-(111111111+(111111111+(111111111+(11111111+(11111111+(11111111+(11111111-(1111111-(111111+(111111+(111111+(111111-(11111+(11111+(1111+(1111+(1111+(1111+(111+(111+(111+(111-(11-(1+(1+(1+(1)))))))))))))))))))))))))))
750869335: 1111111111-(111111111+(111111111+(111111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(111111+(111111+(11111+(11111-(1111+(1111+(111+(111+(111+(111+(1))))))))))))))))))))
757710567: 1111111111-(111111111+(111111111+(111111111+(11111111+(11111111-(1111111+(1111111-(111111-(11111+(11111+(11111+(11111-(111+(111+(111+(111+(111-(11))))))))))))))))))
759967747: 1111111111-(111111111+(111111111+(111111111+(11111111+(11111111-(1111111+(1111111+(1111111+(1111111-(11111+(11111+(11111-(1111-(11+(11+(11-(1+(1))))))))))))))))))
777616154: 1111111111-(111111111+(111111111+(111111111+(111111+(11111+(11111+(11111+(11111+(1111+(1111+(1111+(1111+(1111+(111+(111+(111+(111+(111-(11+(11+(11+(11-(1+(1+(1)))))))))))))))))))))))))
830071127: 1111111111-(111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111-(111111-(11111+(11111+(11111+(11111-(1111+(1111+(1111+(1111+(11+(1+(1+(1+(1))))))))))))))))))))))))
833809927: 1111111111-(111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(11111111-(111111+(111111+(111111+(111111+(11111+(11111+(11111-(1111+(111-(11+(11+(11+(1+(1+(1+(1+(1))))))))))))))))))))))))
835873060: 1111111111-(111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(111111+(111111+(111111-(11111+(1111+(1111+(1111+(1111+(111+(111+(11+(11+(11+(11+(11-(1+(1+(1)))))))))))))))))))))))))))
836438554: 1111111111-(111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(1111111-(111111+(111111+(1111+(1111+(1111+(1111+(1111+(111+(111+(111+(1+(1+(1)))))))))))))))))))))))
836945593: 1111111111-(111111111+(111111111+(11111111+(11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(1111111+(111111+(111111+(11111+(11111+(11111+(11111+(11111+(1111+(11+(11+(11+(1+(1+(1+(1+(1))))))))))))))))))))))))))
863728236: 1111111111-(111111111+(111111111+(11111111+(11111111+(1111111+(1111111+(1111111-(111111+(111111+(111111+(111111-(11111+(11111+(11111+(11111+(1111+(1111+(1111+(1111+(1111-(111+(111+(111+(111+(11+(1+(1)))))))))))))))))))))))))))
864158514: 1111111111-(111111111+(111111111+(11111111+(11111111+(1111111+(1111111+(111111+(111111+(111111-(11111+(11111+(11111+(11111+(1111+(1111+(1111-(111+(111+(111+(11+(11+(11+(11-(1+(1)))))))))))))))))))))))))
871273503: 1111111111-(111111111+(111111111+(11111111+(11111111-(1111111+(1111111+(1111111+(1111111+(111111+(11111+(11111+(11111+(11111+(11111-(1111+(1111+(1111+(1111-(111+(11+(11+(11+(11+(11+(1+(1+(1+(1))))))))))))))))))))))))))))
881615667: 1111111111-(111111111+(111111111+(11111111-(1111111+(1111111+(1111111+(111111+(111111+(111111+(111111+(11111+(11111+(11111+(11111+(11111+(1111+(1111+(1111+(1111+(111+(1+(1))))))))))))))))))))))
891619600: 1111111111-(111111111+(111111111-(1111111+(1111111+(111111+(111111+(111111+(111111+(111111-(11111+(11111+(11111+(11111+(1111+(1111+(111+(111+(111+(111-(11+(11+(11+(11)))))))))))))))))))))))
897181691: 1111111111-(111111111+(111111111-(11111111-(1111111+(1111111+(111111+(111111+(111111+(111111+(111111+(11111+(11111+(11111+(11111-(1111+(1111+(1111+(111+(111+(111+(111+(111+(11+(11+(1+(1))))))))))))))))))))))))))
918159061: 1111111111-(111111111+(111111111-(11111111+(11111111+(11111111-(1111111+(1111111+(1111111+(1111111-(111111+(111111+(111111+(11111+(11111+(11111+(11111+(1111+(1111+(1111+(111+(111-(11+(11+(11+(11+(1+(1+(1+(1+(1))))))))))))))))))))))))))))))
920521050: 1111111111-(111111111+(111111111-(11111111+(11111111+(11111111-(1111111+(111111+(111111+(111111+(111111+(111111+(11111+(11111+(11111+(1111+(111-(11+(11+(11+(11+(1+(1+(1+(1+(1)))))))))))))))))))))))))
924502226: 1111111111-(111111111+(111111111-(11111111+(11111111+(11111111+(1111111+(1111111+(11111+(11111+(11111+(11111+(11111+(1111+(1111+(1+(1+(1+(1+(1)))))))))))))))))))
929983535: 1111111111-(111111111+(111111111-(11111111+(11111111+(11111111+(11111111-(1111111+(1111111+(1111111+(11111+(1111+(1111+(1111+(1111+(1111-(111+(111-(11+(11-(1))))))))))))))))))))
943162304: 1111111111-(111111111+(11111111+(11111111+(11111111+(11111111+(11111111+(1111111+(111111+(11111+(11111+(11111+(11111+(11111+(1111+(1111+(1111+(1111-(111-(11+(11+(11-(1+(1)))))))))))))))))))))))
950210939: 1111111111-(111111111+(11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(1111111-(111111+(111111-(11111+(111+(111-(11+(11+(11+(11+(1+(1+(1+(1+(1))))))))))))))))))))))))
950214176: 1111111111-(111111111+(11111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111+(1111111-(111111+(111111-(11111-(1111+(1111+(1111-(111+(111+(11+(11+(11+(11+(1+(1+(1)))))))))))))))))))))))))
962610357: 1111111111-(111111111+(11111111+(11111111+(11111111+(1111111+(1111111+(1111111+(1111111-(111111+(111111+(111111+(11111+(11111+(11111+(11111+(11111-(1111-(111+(111+(111+(11+(11+(1+(1))))))))))))))))))))))))
974842859: 1111111111-(111111111+(11111111+(11111111+(1111111+(1111111+(1111111-(111111+(111111+(111111+(111111-(11111+(11111+(11111+(11111+(1111+(111+(111+(111+(111+(11+(11+(11-(1+(1))))))))))))))))))))))))
988572832: 1111111111-(111111111+(11111111+(111111+(111111+(111111-(11111+(11111-(1111+(1111+(1111+(1111+(111+(111+(111+(111+(11+(11+(11+(11+(11+(1+(1+(1)))))))))))))))))))))))
Python, score 17136288
secondary score: 12/09/2016 08:53
(4784 ones and 3582 operations)
Work in progress but OP asked for my current code...
# get number in factorial base, ignoring the place of 0! (always 0)
r=lambda n,q=[],i=2:n and r(n//i,q+[n%i],i+1)or q
# rewrite a number in a form using only 1s by converting its factorial base, the range only requires using up to 12 places, again ignoring the 0! place so we only hard code 1 and [5-12] (9 numbers)
def g(n):
k=['','1']+['1'+'+1'*i for i in range(1,4)]+['(11-1)/(1+1)','t(1+1+1)','1+t(1+1+1)','11-1-1-1','11-1-1','11-1','11','1+11']
q=r(n)
return n<13and k[n]or(q[0]and'1+'or'')+'+'.join((v>1and'('+k[v]+')*'or'')+(i>2and't'or'')+'('+k[i]+')'for i,v in enumerate(q[1:],2)if v)
#get g(n) representations after differencing from 0, 11, 111, 1111, ... then return the one with the minimal stand-alone score
def h(n):
o=[g(n)]+[str(v)+(v<n and'+('or'-(')+g(abs(v-n))+')'for v in[int('1'*l)for l in range(2,11)]]
s=[sum(map(v.count,'+-*/t'))*v.count('1')for v in o]
return o[s.index(min(s))]
# A Factorial function for analysis with eval
def t(n):
r = 1
while n:
r *= n
n -= 1
return r
Output - note that t
is the factorial function, so as not to be confused with f
for floor
if it gets used - I evaluated each using the function t
(above) to double check that they are all correct:
945536 11111111-(1+(1+1)+(1+1)*t(1+1+1)+((11-1)/(1+1))*t((11-1)/(1+1))+(t(1+1+1))*t(t(1+1+1))+(11-1-1-1)*t(11-1-1)+(1+1)*t(11-1))
16878234 11111111+(1+(1+1+1)*t(1+1+1)+t(1+1+1+1)+((11-1)/(1+1))*t((11-1)/(1+1))+t(t(1+1+1))+(11-1-1-1)*t(11-1-1-1)+((11-1)/(1+1))*t(11-1-1)+t(11-1))
32608778 111111111-(1+(1+1)*t(1+1+1)+(t(1+1+1))*t(t(1+1+1))+(1+t(1+1+1))*t(1+t(1+1+1))+(1+1)*t(11-1-1-1)+(t(1+1+1))*t(11-1-1)+(11-1)*t(11-1)+t(11))
42017515 111+((1+1)*(1+1)+(1+1+1)*t((11-1)/(1+1))+((11-1)/(1+1))*t(t(1+1+1))+(1+t(1+1+1))*t(11-1-1-1)+((11-1)/(1+1))*t(11-1-1)+t(11))
48950830 111+(1+t(1+1+1)+(1+1+1)*t(1+1+1+1)+(1+1+1)*t(t(1+1+1))+(11-1-1-1)*t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+(1+1)*t(11-1)+t(11))
51483452 11111111+(1+(1+1)+(1+1+1)*t(1+1+1)+(1+1+1+1)*t((11-1)/(1+1))+(1+1)*t(t(1+1+1))+(1+1)*t(1+t(1+1+1))+(1+1)*t(11-1-1-1)+t(11-1-1)+t(11))
52970263 111111111-((1+1)+t(1+1+1)+t((11-1)/(1+1))+(t(1+1+1))*t(t(1+1+1))+(1+t(1+1+1))*t(1+t(1+1+1))+t(11-1-1-1)+((11-1)/(1+1))*t(11-1)+t(11))
54278649 1+(1+1)+t(1+1+1)+(1+1+1+1)*t(t(1+1+1))+t(1+t(1+1+1))+((11-1)/(1+1))*t(11-1-1-1)+(11-1-1)*t(11-1-1)+(1+1+1)*t(11-1)+t(11)
63636656 1111111+(1+t(1+1+1+1)+(t(1+1+1))*t(t(1+1+1))+((11-1)/(1+1))*t(1+t(1+1+1))+(1+1)*t(11-1-1-1)+(1+1)*t(11-1-1)+(t(1+1+1))*t(11-1)+t(11))
78817406 1111+(1+t(1+1+1)+(1+1)*t(1+1+1+1)+t(t(1+1+1))+(t(1+1+1))*t(1+t(1+1+1))+t(11-1-1-1)+(1+t(1+1+1))*t(11-1-1)+(11-1)*t(11-1)+t(11))
89918907 1+(1+1)+t(1+1+1+1)+(1+1)*t((11-1)/(1+1))+t(1+t(1+1+1))+(1+t(1+1+1))*t(11-1-1-1)+(1+t(1+1+1))*t(11-1-1)+(1+1)*t(11-1)+(1+1)*t(11)
90757642 1111111+(1+(1+1)+(1+1)*t(1+1+1+1)+(1+1+1)*t(1+t(1+1+1))+(1+t(1+1+1))*t(11-1-1)+(1+1)*t(11-1)+(1+1)*t(11))
95364861 11111111+((1+1)*(1+1)+(1+1+1)*t(1+1+1)+(1+1)*t(1+1+1+1)+((11-1)/(1+1))*t(1+t(1+1+1))+t(11-1-1-1)+(1+1)*t(11-1-1)+t(11-1)+(1+1)*t(11))
102706605 1111+((1+1)+(1+1)*t(1+1+1)+(1+1+1)*t((11-1)/(1+1))+(1+1)*t(1+t(1+1+1))+(1+1+1)*t(11-1-1)+(t(1+1+1))*t(11-1)+(1+1)*t(11))
113965374 t(1+1+1)+(1+1)*t(1+1+1+1)+t((11-1)/(1+1))+t(t(1+1+1))+(1+1+1+1)*t(1+t(1+1+1))+(1+1+1+1)*t(11-1-1)+(11-1-1)*t(11-1)+(1+1)*t(11)
122448605 111111+((1+1)+(1+1)*t(1+1+1)+t((11-1)/(1+1))+(1+1)*t(t(1+1+1))+t(1+t(1+1+1))+t(11-1-1-1)+(1+t(1+1+1))*t(11-1-1)+(1+1+1)*t(11))
126594161 111111111+((1+1)+(1+1)*t(1+1+1+1)+t((11-1)/(1+1))+(t(1+1+1))*t(11-1-1-1)+(1+1)*t(11-1-1)+(1+1+1+1)*t(11-1))
148064959 1111111111-((1+1+1)*t(1+1+1+1)+(1+1+1+1)*t(t(1+1+1))+(11-1-1-1)*t(11-1-1-1)+(1+1+1)*t(11-1-1)+t(11-1)+(1+1)*t(1+11))
150735075 11111111+((1+1)*(1+1)+t((11-1)/(1+1))+t(t(1+1+1))+(1+t(1+1+1))*t(1+t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+((11-1)/(1+1))*t(11-1)+(1+1+1)*t(11))
154382918 1111111+(1+t(1+1+1)+(1+1+1)*t((11-1)/(1+1))+(1+1+1)*t(1+t(1+1+1))+(1+1+1)*t(11-1-1-1)+(1+1)*t(11-1-1)+(11-1-1)*t(11-1)+(1+1+1)*t(11))
172057472 1111+(1+t((11-1)/(1+1))+t(t(1+1+1))+(1+1)*t(1+t(1+1+1))+t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+(1+1+1)*t(11-1)+(1+1+1+1)*t(11))
192280850 1111111111-(1+(1+1)*(1+1)+(1+1+1+1)*t(1+1+1+1)+(1+1+1+1)*t(t(1+1+1))+(1+1+1)*t(1+t(1+1+1))+(1+1)*t(11-1-1)+(11)*t(11)+t(1+11))
194713795 111111111+((1+1)*(1+1)+((11-1)/(1+1))*t((11-1)/(1+1))+((11-1)/(1+1))*t(t(1+1+1))+(1+1+1)*t(1+t(1+1+1))+(1+1+1)*t(11-1-1-1)+t(11-1)+(1+1)*t(11))
207721209 111111+((1+1+1)*t(1+1+1)+(1+1)*t((11-1)/(1+1))+(1+1+1)*t(t(1+1+1))+t(11-1-1-1)+(1+1)*t(11-1-1)+(1+1)*t(11-1)+((11-1)/(1+1))*t(11))
220946392 111111111+(1+((11-1)/(1+1))*t(t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+(1+1)*t(11-1-1)+(11-1-1-1)*t(11-1)+(1+1)*t(11))
225230299 1111111111-((1+1)*t(1+1+1)+(1+1)*t(1+t(1+1+1))+(1+1)*t(11-1-1-1)+t(11-1-1)+(1+1)*t(11-1)+(11-1)*t(11)+t(1+11))
227043979 1111111111-((1+1)*t(1+1+1)+t(t(1+1+1))+(1+1)*t(1+t(1+1+1))+(1+1)*t(11-1-1-1)+(t(1+1+1))*t(11-1-1)+t(11-1)+(11-1)*t(11)+t(1+11))
241011012 11+(1+(1+1+1)*t((11-1)/(1+1))+(1+1+1+1)*t(t(1+1+1))+(1+1+1)*t(1+t(1+1+1))+t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+(t(1+1+1))*t(11))
248906099 11+((1+1)*t(1+1+1+1)+((11-1)/(1+1))*t((11-1)/(1+1))+(1+1)*t(1+t(1+1+1))+(11-1-1-1)*t(11-1-1-1)+((11-1)/(1+1))*t(11-1-1)+(1+1)*t(11-1)+(t(1+1+1))*t(11))
249796314 111111+(1+(1+1)+((11-1)/(1+1))*t(t(1+1+1))+(1+1+1+1)*t(1+t(1+1+1))+(11-1-1-1)*t(11-1-1)+(1+1)*t(11-1)+(t(1+1+1))*t(11))
250546528 111+(1+(1+1+1+1)*t(1+1+1+1)+(1+1+1+1)*t(t(1+1+1))+(1+t(1+1+1))*t(1+t(1+1+1))+(1+1+1)*t(11-1-1-1)+(1+1+1)*t(11-1)+(t(1+1+1))*t(11))
258452706 11+(1+t(1+1+1)+(1+1)*t(1+1+1+1)+(1+1)*t(t(1+1+1))+(1+1)*t(11-1-1-1)+(1+1)*t(11-1-1)+((11-1)/(1+1))*t(11-1)+(t(1+1+1))*t(11))
276862988 111+(1+(1+1)*(1+1)+(1+1+1)*t(1+1+1+1)+(1+1+1+1)*t((11-1)/(1+1))+((11-1)/(1+1))*t(1+t(1+1+1))+(11-1-1-1)*t(11-1-1-1)+(1+1)*t(11-1-1)+(11-1)*t(11-1)+(t(1+1+1))*t(11))
277140688 1111+(1+(1+1)+t(1+1+1)+(1+1)*t(1+1+1+1)+(1+1+1+1)*t(1+t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+(1+1+1)*t(11-1-1)+(11-1)*t(11-1)+(t(1+1+1))*t(11))
280158490 (1+1)*(1+1)+t(1+1+1)+(1+1+1)*t(1+t(1+1+1))+(1+1)*t(11-1-1)+(1+t(1+1+1))*t(11)
286074562 1111+(1+(1+1)+(1+1)*t(1+1+1+1)+t((11-1)/(1+1))+(1+1+1+1)*t(t(1+1+1))+(1+1+1)*t(11-1-1-1)+(11-1-1-1)*t(11-1-1)+t(11-1)+(1+t(1+1+1))*t(11))
308946627 11111+((1+1)*(1+1)+(1+1+1)*t(1+1+1+1)+((11-1)/(1+1))*t(t(1+1+1))+(1+1+1)*t(11-1-1-1)+t(11-1-1)+(11-1-1-1)*t(11-1)+(1+t(1+1+1))*t(11))
310972897 111111111+((1+1)*(1+1)+t(1+1+1)+(1+1+1+1)*t(1+1+1+1)+(1+1+1+1)*t((11-1)/(1+1))+(1+t(1+1+1))*t(1+t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+((11-1)/(1+1))*t(11))
322612091 11+((1+1)*t((11-1)/(1+1))+(1+1)*t(t(1+1+1))+(1+1)*t(1+t(1+1+1))+(11-1-1)*t(11-1-1)+(11-1-1-1)*t(11))
324445400 1111+(1+(1+1)*t(1+1+1+1)+(t(1+1+1))*t(t(1+1+1))+((11-1)/(1+1))*t(1+t(1+1+1))+(1+1+1+1)*t(11-1-1)+t(11-1)+(11-1-1-1)*t(11))
336060042 11+(1+t(1+1+1)+t(1+1+1+1)+(1+1+1+1)*t(t(1+1+1))+(t(1+1+1))*t(1+t(1+1+1))+(t(1+1+1))*t(11-1-1)+(1+1+1+1)*t(11-1)+(11-1-1-1)*t(11))
346729632 11111+(1+(1+1+1)*t((11-1)/(1+1))+(1+1)*t(t(1+1+1))+t(1+t(1+1+1))+(1+1+1+1)*t(11-1-1-1)+((11-1)/(1+1))*t(11-1-1)+(1+t(1+1+1))*t(11-1)+(11-1-1-1)*t(11))
349428326 11+(1+(1+1)+(1+1+1)*t(1+1+1+1)+(1+1+1)*t(1+t(1+1+1))+(11-1-1-1)*t(11-1-1-1)+(1+1)*t(11-1-1)+(11-1-1-1)*t(11-1)+(11-1-1-1)*t(11))
352769482 1111+(1+(1+1)+(1+1)*t(1+1+1+1)+((11-1)/(1+1))*t(t(1+1+1))+t(1+t(1+1+1))+t(11-1-1-1)+(1+1)*t(11-1-1)+(11-1-1)*t(11-1)+(11-1-1-1)*t(11))
363039453 111111+(t(1+1+1)+(1+1+1+1)*t(1+1+1+1)+(1+1+1+1)*t(t(1+1+1))+t(1+t(1+1+1))+t(11-1-1-1)+t(11-1)+(11-1-1)*t(11))
363851029 1111+(t(1+1+1)+(1+1+1)*t(1+1+1+1)+(1+1+1)*t(t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+(1+1)*t(11-1-1)+t(11-1)+(11-1-1)*t(11))
392168304 11111111+(1+(1+1+1)*t(1+1+1+1)+(1+1+1+1)*t(t(1+1+1))+(t(1+1+1))*t(1+t(1+1+1))+(t(1+1+1))*t(11-1)+(11-1-1)*t(11))
401975104 1111111+(1+(1+1)+t(1+1+1)+t(1+1+1+1)+(1+1+1)*t((11-1)/(1+1))+(1+1+1)*t(t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+(11-1)*t(11))
407890409 11111+((1+1+1)*t(1+1+1)+(1+1+1)*t(t(1+1+1))+(1+1+1+1)*t(11-1-1)+(1+1)*t(11-1)+(11-1)*t(11))
407971913 11111+((1+1+1)*t(1+1+1)+t(1+1+1+1)+t((11-1)/(1+1))+(1+1+1+1)*t(t(1+1+1))+(1+1)*t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+(1+1)*t(11-1)+(11-1)*t(11))
425780757 111+(t(1+1+1)+(1+1)*t(t(1+1+1))+(1+1+1)*t(11-1-1-1)+(1+1+1)*t(11-1-1)+(1+t(1+1+1))*t(11-1)+(11-1)*t(11))
459441559 1111111+((1+1)*t(1+1+1+1)+(1+1+1+1)*t(t(1+1+1))+(1+1)*t(1+t(1+1+1))+(1+1+1)*t(11-1-1)+((11-1)/(1+1))*t(11-1)+(11)*t(11))
465592122 1111+(1+(1+1)*(1+1)+t(1+1+1)+t((11-1)/(1+1))+t(t(1+1+1))+(1+1+1)*t(1+t(1+1+1))+(1+1+1)*t(11-1-1)+(1+t(1+1+1))*t(11-1)+(11)*t(11))
475898732 11111+(1+(1+1)+(1+1+1)*t(1+1+1)+t(t(1+1+1))+(t(1+1+1))*t(1+t(1+1+1))+(1+1+1)*t(11-1-1-1)+t(11-1-1)+(11-1)*t(11-1)+(11)*t(11))
482826596 111111+(1+(1+1)*(1+1)+t((11-1)/(1+1))+(t(1+1+1))*t(t(1+1+1))+(1+1)*t(11-1-1-1)+t(11-1)+t(1+11))
484263150 t(1+1+1)+t(1+1+1+1)+(1+1+1+1)*t((11-1)/(1+1))+(t(1+1+1))*t(t(1+1+1))+(1+1+1)*t(1+t(1+1+1))+(1+1+1+1)*t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+t(11-1)+t(1+11)
506235403 1111+((1+1)*t(1+1+1)+t((11-1)/(1+1))+(1+1)*t(t(1+1+1))+(1+1+1)*t(1+t(1+1+1))+((11-1)/(1+1))*t(11-1-1)+(1+t(1+1+1))*t(11-1)+t(1+11))
548951531 11+((1+1+1+1)*t((11-1)/(1+1))+(t(1+1+1))*t(t(1+1+1))+(t(1+1+1))*t(1+t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+(1+1)*t(11-1-1)+(11-1-1-1)*t(11-1)+t(11)+t(1+11))
554295842 (1+1)+(1+1)*t((11-1)/(1+1))+(1+1)*t(t(1+1+1))+(1+1+1)*t(1+t(1+1+1))+(1+1+1+1)*t(11-1-1-1)+(1+t(1+1+1))*t(11-1-1)+(11-1-1)*t(11-1)+t(11)+t(1+11)
580536366 1111111111-(1+t(1+1+1+1)+(1+1)*t((11-1)/(1+1))+((11-1)/(1+1))*t(t(1+1+1))+t(11-1-1-1)+(1+1)*t(11-1-1)+(1+1+1)*t(11-1)+t(11)+t(1+11))
587051904 1111111111-(1+t(1+1+1)+(1+1+1+1)*t(1+t(1+1+1))+t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+t(11-1)+t(11)+t(1+11))
588265985 11+(t(1+1+1)+(1+1)*t(1+1+1+1)+(1+1+1)*t(t(1+1+1))+(1+t(1+1+1))*t(1+t(1+1+1))+t(11-1-1)+(11-1-1-1)*t(11-1)+(1+1)*t(11)+t(1+11))
588298051 11111111+((1+1)+(1+1+1)*t(1+1+1)+(1+1+1)*t((11-1)/(1+1))+t(t(1+1+1))+t(1+t(1+1+1))+((11-1)/(1+1))*t(11-1-1-1)+((11-1)/(1+1))*t(11-1)+(1+1)*t(11)+t(1+11))
590968352 1111111+(1+t((11-1)/(1+1))+t(t(1+1+1))+(1+1+1)*t(1+t(1+1+1))+(1+1+1+1)*t(11-1-1-1)+((11-1)/(1+1))*t(11-1-1)+(11-1-1-1)*t(11-1)+(1+1)*t(11)+t(1+11))
601194306 1111111+(1+(1+1)*(1+1)+t(1+1+1)+t(1+1+1+1)+((11-1)/(1+1))*t((11-1)/(1+1))+(t(1+1+1))*t(11-1-1-1)+(1+1+1)*t(11-1-1)+(1+1+1)*t(11)+t(1+11))
607771869 1111111+((1+1)+(1+1)*t(1+1+1)+t(1+1+1+1)+(1+1)*t((11-1)/(1+1))+t(t(1+1+1))+t(1+t(1+1+1))+(1+t(1+1+1))*t(11-1-1-1)+t(11-1-1)+(1+1)*t(11-1)+(1+1+1)*t(11)+t(1+11))
618578932 111111111+(1+(1+1)*t(1+1+1)+(1+1)*t(1+1+1+1)+(1+1)*t((11-1)/(1+1))+(1+1+1+1)*t(11-1-1-1)+(11-1-1-1)*t(11-1-1)+(1+t(1+1+1))*t(11-1)+t(1+11))
626776380 1111+(1+(1+1)*(1+1)+t(1+1+1+1)+t((11-1)/(1+1))+t(t(1+1+1))+(1+1)*t(11-1-1-1)+(1+t(1+1+1))*t(11-1-1)+(1+t(1+1+1))*t(11-1)+(1+1+1)*t(11)+t(1+11))
667919873 111111+((1+1)+t((11-1)/(1+1))+((11-1)/(1+1))*t(t(1+1+1))+((11-1)/(1+1))*t(1+t(1+1+1))+(1+1)*t(11-1-1-1)+(11-1-1-1)*t(11-1)+(1+1+1+1)*t(11)+t(1+11))
681786366 t(1+1+1)+(1+1+1)*t((11-1)/(1+1))+(1+1+1)*t(1+t(1+1+1))+(1+t(1+1+1))*t(11-1-1-1)+(11-1-1-1)*t(11-1-1)+((11-1)/(1+1))*t(11)+t(1+11)
689854904 1111+(1+(1+1+1)*t(1+1+1+1)+t((11-1)/(1+1))+((11-1)/(1+1))*t(t(1+1+1))+(1+1+1)*t(1+t(1+1+1))+t(11-1-1)+(1+1+1)*t(11-1)+((11-1)/(1+1))*t(11)+t(1+11))
692055400 11+(1+(1+1)*(1+1)+t(1+1+1+1)+(1+1+1+1)*t(t(1+1+1))+t(11-1-1-1)+(1+t(1+1+1))*t(11-1-1)+(1+1+1)*t(11-1)+((11-1)/(1+1))*t(11)+t(1+11))
697665495 1111111111-((1+1)*(1+1)+(1+1)*t(1+1+1)+(t(1+1+1))*t(t(1+1+1))+(1+1+1)*t(11-1-1-1)+(11-1-1)*t(11-1-1)+(1+1+1)*t(11-1)+(11-1)*t(11))
711608194 (1+1)*(1+1)+t(1+1+1)+t(1+1+1+1)+(1+1+1+1)*t((11-1)/(1+1))+t(11-1-1)+(11-1-1)*t(11-1)+((11-1)/(1+1))*t(11)+t(1+11)
734027104 11+(1+(1+1)*(1+1)+(1+1)*t(1+1+1+1)+(1+1)*t(t(1+1+1))+(1+t(1+1+1))*t(11-1-1-1)+(1+1)*t(11-1-1)+(1+1+1+1)*t(11-1)+(t(1+1+1))*t(11)+t(1+11))
750869335 111111111+((1+1)*(1+1)+(1+1)*t(1+1+1)+(1+1)*t(1+1+1+1)+t(t(1+1+1))+(1+1+1)*t(11-1-1)+(1+1+1+1)*t(11)+t(1+11))
757710567 11111+((1+1)*(1+1)+(1+1)*t(1+1+1)+(1+1)*t((11-1)/(1+1))+t(t(1+1+1))+t(1+t(1+1+1))+(11-1-1-1)*t(11-1-1)+(11-1)*t(11-1)+(t(1+1+1))*t(11)+t(1+11))
759967747 1111+((1+1)*t(1+1+1)+t(1+1+1+1)+t((11-1)/(1+1))+(1+1+1)*t(1+t(1+1+1))+(1+1)*t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+(1+t(1+1+1))*t(11)+t(1+11))
777616154 11111+(1+(1+1)+((11-1)/(1+1))*t(t(1+1+1))+(t(1+1+1))*t(1+t(1+1+1))+(1+t(1+1+1))*t(11-1-1-1)+(1+1)*t(11-1-1)+((11-1)/(1+1))*t(11-1)+(1+t(1+1+1))*t(11)+t(1+11))
830071127 1111+((1+1)*(1+1)+(1+1)*t(1+1+1)+(1+1+1)*t(t(1+1+1))+(1+1+1+1)*t(11-1-1-1)+(1+t(1+1+1))*t(11-1-1)+(11-1-1-1)*t(11-1)+(11-1-1-1)*t(11)+t(1+11))
833809927 1111111111-(t(1+1+1+1)+(1+1+1)*t((11-1)/(1+1))+(1+1+1+1)*t(1+t(1+1+1))+t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+(11-1)*t(11-1)+(t(1+1+1))*t(11))
835873060 1111111111-(1+(1+1)+(1+1)*t(1+1+1+1)+((11-1)/(1+1))*t(t(1+1+1))+(1+1)*t(1+t(1+1+1))+(1+1+1+1)*t(11-1-1-1)+(11-1-1-1)*t(11-1-1)+(11-1-1)*t(11-1)+(t(1+1+1))*t(11))
836438554 111+(1+(1+1+1)*t(1+1+1)+t(1+1+1+1)+((11-1)/(1+1))*t(11-1-1)+(11-1)*t(11-1)+(11-1-1-1)*t(11)+t(1+11))
836945593 11111111+((1+1)+(1+1)*t((11-1)/(1+1))+(1+t(1+1+1))*t(11-1-1-1)+((11-1)/(1+1))*t(11-1-1)+(1+t(1+1+1))*t(11-1)+(11-1-1-1)*t(11)+t(1+11))
863728236 1111+(1+(1+1)*(1+1)+(1+1+1)*t(t(1+1+1))+(t(1+1+1))*t(1+t(1+1+1))+t(11-1-1-1)+(1+t(1+1+1))*t(11-1)+(11-1-1)*t(11)+t(1+11))
864158514 111+(1+(1+1)+(1+1+1+1)*t(1+t(1+1+1))+(1+1+1)*t(11-1-1-1)+t(11-1-1)+(1+t(1+1+1))*t(11-1)+(11-1-1)*t(11)+t(1+11))
871273503 111111111+((1+1+1)*t(1+1+1+1)+(t(1+1+1))*t(t(1+1+1))+t(1+t(1+1+1))+(1+t(1+1+1))*t(11-1-1-1)+(1+1+1+1)*t(11-1-1)+(1+t(1+1+1))*t(11)+t(1+11))
881615667 111+((1+1)*t(1+1+1)+t(1+1+1+1)+((11-1)/(1+1))*t(t(1+1+1))+(1+1+1)*t(1+t(1+1+1))+(1+1+1+1)*t(11-1-1-1)+(11-1-1)*t(11-1-1)+(11-1)*t(11)+t(1+11))
891619600 1111111+(1+(1+1)+t(1+1+1)+(1+1)*t((11-1)/(1+1))+t(t(1+1+1))+(1+1+1+1)*t(11-1-1)+(1+1+1)*t(11-1)+(11-1)*t(11)+t(1+11))
897181691 111111+((1+1)+(1+1+1)*t(1+1+1)+(1+1)*t((11-1)/(1+1))+t(t(1+1+1))+(t(1+1+1))*t(1+t(1+1+1))+(1+1)*t(11-1-1)+((11-1)/(1+1))*t(11-1)+(11-1)*t(11)+t(1+11))
918159061 1111+(t(1+1+1)+t(1+1+1+1)+(1+1)*t((11-1)/(1+1))+t(t(1+1+1))+(t(1+1+1))*t(1+t(1+1+1))+t(11-1-1-1)+(11)*t(11)+t(1+11))
920521050 11111+(1+(1+1+1)*t(1+1+1)+(t(1+1+1))*t(t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+(t(1+1+1))*t(11-1-1)+(11)*t(11)+t(1+11))
924502226 (1+1)+t(1+1+1+1)+((11-1)/(1+1))*t((11-1)/(1+1))+(t(1+1+1))*t(t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+(1+t(1+1+1))*t(11-1-1)+t(11-1)+(11)*t(11)+t(1+11)
929983535 1111111111-((1+1)+t(1+1+1)+(1+1)*t(1+1+1+1)+(1+1)*t(1+t(1+1+1))+t(11-1-1-1)+(11-1-1)*t(11-1-1)+((11-1)/(1+1))*t(11-1)+(1+1+1+1)*t(11))
943162304 1111+(1+(1+1+1)*t(1+1+1+1)+t(t(1+1+1))+(1+t(1+1+1))*t(1+t(1+1+1))+(11-1-1)*t(11-1-1)+(t(1+1+1))*t(11-1)+(11)*t(11)+t(1+11))
950210939 111111111+((1+1)+(1+1+1)*t(1+1+1)+(1+1)*t(1+1+1+1)+(1+1)*t((11-1)/(1+1))+(1+1+1)*t(11-1-1-1)+(1+1)*t(11-1-1)+(11-1-1)*t(11)+t(1+11))
950214176 1111111+(1+t(1+1+1+1)+(1+1+1+1)*t((11-1)/(1+1))+(1+1)*t(1+t(1+1+1))+(1+1+1+1)*t(11-1-1-1)+((11-1)/(1+1))*t(11-1-1)+(11-1-1-1)*t(11-1)+(11)*t(11)+t(1+11))
962610357 111+(t(1+1+1)+(1+1+1+1)*t((11-1)/(1+1))+(1+1)*t(1+t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+(1+1)*t(11-1-1)+t(11-1)+(1+1)*t(1+11))
974842859 111111+((1+1)+(1+1+1)*t(1+1+1)+(1+1)*t(1+1+1+1)+t(t(1+1+1))+(1+t(1+1+1))*t(1+t(1+1+1))+(t(1+1+1))*t(11-1-1)+(1+1+1+1)*t(11-1)+(1+1)*t(1+11))
988572832 1111111111-(1+(1+1)+(1+1)*t(1+1+1)+t(1+1+1+1)+t(t(1+1+1))+t(1+t(1+1+1))+(t(1+1+1))*t(11-1-1-1)+(1+t(1+1+1))*t(11-1-1)+(1+1+1)*t(11))