```
import sys
import random
sys.setrecursionlimit(1500)
def prime(n):
"""
Generate all prime numbers less than n.
"""
yield 2
primes = []
for m in range(3,n,2):
if all(m%p for p in primes):
primes.append(m)
yield m
n=int(raw_input())
i=0
j=0
while(n!=-1):
p=list(prime(n))
sun=0
while(sun!=n and i<1000000000000000000000000000000):
F=random.sample(p,4)
sun=sum(F)
i+=1
if(sun==n):
for i in F:
if(j==3):
print i
else:
print i,
j+=1
else:
print 'Impossible.'
n=int(raw_input())
i=0
```

Time Limit: 4 seconds

Euler proved in one of his classic theorems that prime numbers are infinite in number. But

can every number be expressed as a summation of four positive primes? Your tutors dont know

the answer. May be you can help!!! I want your solution to be very efficient as we have inefficient

machines in the honours lab. The definition of a prime number for this problem is, A prime

number is a positive number which has exactly two distinct integer factors. As for example 37

is prime as it has exactly two distinct integer factors 37 and 1.

2.2 Input:

The input contains one integer number N (N<=10000000) in every line. This is the number you

will have to express as a summation of four primes. Input is terminated by end of file.

2.3 Output:

For each line of input there is one line of output, which contains four prime numbers according to

the given condition. If the number cannot be expressed as a summation of four prime numbers

print the line “Impossible.” in a single line. There can be multiple solutions. Any good solution

will be accepted.Your program should run in a continuous loop until a ‘-1’ is entered.

2.4 Sample Input:

24

36

46

-1

2.5 Sample Output:

3 11 3 7

3 7 13 13

11 11 17 7

my code take too long so exceed time limit.can any body help i am new at python

*Edited 6 Years Ago by nav33n*: Use the snippet textbox to post your working and fully tested code snippet.