Let the number of days that each can build a house be N (John), K (Jack) and S (Jackson).
If a house can be built in n days, then in one day 1/n-th of a house can be built. If John can build a house by himself in N days, then in one day he can build 1/N of a house. Together, John and Jack can build (1/N+1/K) of a house in a day, so it takes 1/(1/N+1/K)=NK/(N+K) days to build one house. Using this idea we have NK/(N+K)=10; KS/(K+S)=15; NS/(N+S)=30. Or, these can be written: 1/N+1/K=1/10; 1/K+1/S=1/15; 1/N+1/S=1/30, so 2/N+2/K+2/S=(3+2+1)/30=1/5 and 1/N+1/K+1/S=1/10, so 1/N+1/15=1/10, 1/N=1/30, making N=30. 1/K+1/30=1/10, making 1/K=2/30=1/15 and K=15. 1/S=1/10-1/10=0, so S cannot be evaluated (infinity).
It would appear then that John, who takes 30 days to build the house by himself, and Jack, who takes 15 days to build it by himself, are the only participating carpenters, since Jackson appears to be making no contribution.
Another way of viewing this problem is to consider the wooden house as being made of N wooden pieces or blocks. Each carpenter contributes a certain number of pieces of wood a day, n, k and s. So we can write:
(1) 10n+10k=N; (2) 15k+15s=N; (3) 30n+30s=N.
From (1) and (2): 10n+10k=15k+15s, 10n=5k+15s. So 30n=15k+45s.
From (2) and (3): 15k+15s=30n+30s, 15k=30n+15s⇒15k=15k+45s+15s, 60s=0, making s=0.
Because s=0, 10n=5k, so k=2n (from combination of (1) and (2)), N=30n. N pieces of wood make one house, and n (John) provides n pieces a day, so he can make a house by himself in 30 days, while k (Jack) provides 2n pieces a day, twice as much as John, so he can make a house in half the time, that is, 15 days. Jackson's contribution is zero.
[If the numbers of days to complete the house had been 12, 15 and 20 instead if 10, 15 and 30, 1/N+1/K=1/12, 1/K+1/S=1/15 and 1/N+1/S=1/20. 1/N+1/K+1/S=(5+4+3)/(2*60)=1/10; 1/S=1/10-1/12=1/60, making S=60; 1/K=1/10-1/20=1/20, making K=20; and 1/N=1/10-1/15=1/30, making N=30. So John's time would have been 30 days, Jack's 20 days and Jackson's 60 days.]