I'm not quite stuck, but it's really difficult to continue. So I'm sharing my progress to see what others can do.
Note: Two or more letters or numbers with no symbol between them stands for concatenation so 9BA means 900+10B+A. If I want multiplication I'll use the symbol *.
He's a way of looking at part b.
10^n+1 is clearly generated by 10^n since the sod=1
(I will henceforth ignore this and look for two or three additional generators.)
Other generators must start with a bunch of 9's
for example for n=6 d(999955)=1000001
If we seek to make just the last two digits non-9 we won't be able to find 10^n-1 with two generators.
Suppose for n=7 we seek digits B, A such that
d(99999BA)=10000001
99999BA+9+9+9+9+9+B+A=10000001
11B+2A+9*5=10000001-9999900=101
11B+2A=101-45=56
This linear combination of B and A with both valid digits will never have two solutions (check for yourself) (and sometimes has none) The only solution, in this case, is B=4, A=6.
Once we get to the point where a 3rd digit can be non-9 we can get an extra solution. This happens to be at n=13
d((ten9's)CBA)=10^13+1
gives
101C+11B+A+90=1001
101C+11B+A=911
here the second solution comes because there are two possible values of C (and each gives a single valid solution)
C=9 makes 11B+2A=2 so B=0, A=1.
C=8 makes 11B+2A=103 so B=9, A=2.
so the final three digits can be 901 or 892
These triple generators occur rarely and only because 11B+A can slightly exceed 100. 11*9+9=117 is the maximum. They cannot give any of {1,3,5,7,9,20,31,42,53,64,75,86,97,108,110,112,113,116}
So far so good. It seems that going to a fourth non-9 digit D should do the trick. No so!
The greatest of the 81 trios 101C+11B+A that has two sums is 925 (CBA is 908 or 899.) This is smaller than the minimum contribution of the digit D which is 1001.
(Incidentally, the smallest number that invokes D is n=112
d(109*9DCBA)10^113+1 has a single last digit solution 8992. We are already past a googol.)
Ok, all is not lost. Let's use digit E. The contribution of 10001E+1001D together can have a narrower gap. (E=9,D=0)-(E=8,D=9)=992. Better but not small enough.
F then? Nope. 983.
Going down by 9s. Ok. Keep adding digits.
MLKJIHGFED can have a gap as small as 920, so 925 should be possible for CBA.
This is where I stand.
M=9, L=K=J=I=H=G=F=E=D=0 and
M=8, L=K=J=I=H=G=F=E=D=9 both yield 920.
There actually aren't two CBA solutions for 920 just (CBA=910)
So the number of digits is a number that itself is probably around 13 digits long, they are mostly 9's except the last 13. It is hard to continue because I'm using a calculator with a 10 digit display.
I'm close though. Hopefully, this makes enough sense that someone else can follow it through. At least I've pinned down the generators at less than a googolplex, right?