Skip to main content
deleted 24 characters in body
Source Link
batman
  • 369
  • 3
  • 8

Python 206206 181 characters

import itertools as a i,j,v=1v,y=1,2,[],input() while i<1000000: v+=[i] v,i,j=jj=v+[i],j,i+j y=input() for t in xrangerange(len(v)+1):    for s in itertoolsa.combinations(v,t):    if sum(s)==y: print "+".join(map(str, s))+"\n" 

Sample Run:

25 1+3+21 1+3+8+13 1000 13+987 5+8+987 13+377+610 2+3+8+987 5+8+377+610 13+144+233+610 2+3+8+377+610 5+8+144+233+610 13+55+89+233+610 2+3+8+144+233+610 5+8+55+89+233+610 13+21+34+89+233+610 2+3+8+55+89+233+610 5+8+21+34+89+233+610 2+3+8+21+34+89+233+610 

Python 206 characters

import itertools i,j,v=1,2,[] while i<1000000: v+=[i] i,j=j,i+j y=input() for t in xrange(len(v)+1):    for s in itertools.combinations(v,t):    if sum(s)==y: print "+".join(map(str, s))+"\n" 

Sample Run:

25 1+3+21 1+3+8+13 1000 13+987 5+8+987 13+377+610 2+3+8+987 5+8+377+610 13+144+233+610 2+3+8+377+610 5+8+144+233+610 13+55+89+233+610 2+3+8+144+233+610 5+8+55+89+233+610 13+21+34+89+233+610 2+3+8+55+89+233+610 5+8+21+34+89+233+610 2+3+8+21+34+89+233+610 

Python 206 181 characters

import itertools as a i,j,v,y=1,2,[],input() while i<1000000:v,i,j=v+[i],j,i+j for t in range(len(v)+1): for s in a.combinations(v,t): if sum(s)==y:print "+".join(map(str,s))+"\n" 

Sample Run:

25 1+3+21 1+3+8+13 1000 13+987 5+8+987 13+377+610 2+3+8+987 5+8+377+610 13+144+233+610 2+3+8+377+610 5+8+144+233+610 13+55+89+233+610 2+3+8+144+233+610 5+8+55+89+233+610 13+21+34+89+233+610 2+3+8+55+89+233+610 5+8+21+34+89+233+610 2+3+8+21+34+89+233+610 
Post Undeleted by batman
deleted 1296 characters in body
Source Link
batman
  • 369
  • 3
  • 8

Python 182206 characters

import itertools i,j,v=1,2,[] while i<1000000: v+=[i] i,j=j,i+j y=input() for t in xrange(len(v)+1): for s in itertools.combinations(v,t): if sum(s)==y: print "+".join(map(str, s))+"\n" 
>9 (1, 8) (1, 3, 5) 1000 (13, 987) (5, 8, 987) (13, 377, 610) (2, 3, 8, 987) (5, 8, 377, 610) (13, 144, 233, 610) (2, 3, 8, 377, 610) (5, 8, 144, 233, 610) (13, 55, 89, 233, 610) (2, 3, 8, 144, 233, 610) (5, 8, 55, 89, 233, 610) (13, 21, 34, 89, 233, 610)25 (2, 3, 8, 55, 89, 233, 610)1+3+21 (5, 8, 21, 34, 89, 233, 610) (2, 3, 8, 21, 34, 89, 233, 610)1+3+8+13 20481000 (1, 5, 13, 55, 377, 1597)13+987 (1, 2, 3, 13, 55, 377, 1597) (1, 5, 13, 21, 34, 377, 1597)5+8+987 (1, 5, 13, 55, 144, 233, 1597) (1, 5, 13, 55, 377, 610, 987)13+377+610 (1, 2, 3, 5, 8, 55, 377, 1597) (1, 2, 3, 13, 21, 34, 377, 1597) (1, 2, 3, 13, 55, 144, 233, 1597)2+3+8+987 (1, 2, 3, 13, 55, 377, 610, 987) (1, 5, 13, 21, 34, 144, 233, 1597)5+8+377+610 (1, 5, 13, 21, 34, 377, 610, 987) (1, 5, 13, 55, 144, 233, 610, 987)13+144+233+610 (1, 2, 3, 5, 8, 21, 34, 377, 1597) (1, 2, 3, 5, 8, 55, 144, 233, 1597)2+3+8+377+610 (1, 2, 3, 5, 8, 55, 377, 610, 987) (1, 2, 3, 13, 21, 34, 144, 233, 1597)5+8+144+233+610 (1, 2, 3, 13, 21, 34, 377, 610, 987) (1, 2, 3, 13, 55, 144, 233, 610, 987)13+55+89+233+610 (1, 5, 13, 21, 34, 55, 89, 233, 1597) (1, 5, 13, 21, 34, 144, 233, 610, 987)2+3+8+144+233+610 (1, 2, 3, 5, 8, 21, 34, 144, 233, 1597) (1, 2, 3, 5, 8, 21, 34, 377, 610, 987)5+8+55+89+233+610 (1, 2, 3, 5, 8, 55, 144, 233, 610, 987) (1, 2, 3, 13, 21, 34, 55, 89, 233, 1597)13+21+34+89+233+610 (1, 2, 3, 13, 21, 34, 144, 233, 610, 987) (1, 5, 13, 21, 34, 55, 89, 233, 610, 987)2+3+8+55+89+233+610 (1, 2, 3, 5, 8, 21, 34, 55, 89, 233, 1597) (1, 2, 3, 5, 8, 21, 34, 144, 233, 610, 987)5+8+21+34+89+233+610 (1, 2, 3, 13, 21, 34, 55, 89, 233, 610, 987) (1, 2, 3, 5, 8, 21, 34, 55, 89, 233, 610, 987)2+3+8+21+34+89+233+610 

Python 182 characters

import itertools i,j,v=1,2,[] while i<1000000: v+=[i] i,j=j,i+j y=input() for t in xrange(len(v)+1): for s in itertools.combinations(v,t): if sum(s)==y: print s 
>9 (1, 8) (1, 3, 5) 1000 (13, 987) (5, 8, 987) (13, 377, 610) (2, 3, 8, 987) (5, 8, 377, 610) (13, 144, 233, 610) (2, 3, 8, 377, 610) (5, 8, 144, 233, 610) (13, 55, 89, 233, 610) (2, 3, 8, 144, 233, 610) (5, 8, 55, 89, 233, 610) (13, 21, 34, 89, 233, 610) (2, 3, 8, 55, 89, 233, 610) (5, 8, 21, 34, 89, 233, 610) (2, 3, 8, 21, 34, 89, 233, 610) 2048 (1, 5, 13, 55, 377, 1597) (1, 2, 3, 13, 55, 377, 1597) (1, 5, 13, 21, 34, 377, 1597) (1, 5, 13, 55, 144, 233, 1597) (1, 5, 13, 55, 377, 610, 987) (1, 2, 3, 5, 8, 55, 377, 1597) (1, 2, 3, 13, 21, 34, 377, 1597) (1, 2, 3, 13, 55, 144, 233, 1597) (1, 2, 3, 13, 55, 377, 610, 987) (1, 5, 13, 21, 34, 144, 233, 1597) (1, 5, 13, 21, 34, 377, 610, 987) (1, 5, 13, 55, 144, 233, 610, 987) (1, 2, 3, 5, 8, 21, 34, 377, 1597) (1, 2, 3, 5, 8, 55, 144, 233, 1597) (1, 2, 3, 5, 8, 55, 377, 610, 987) (1, 2, 3, 13, 21, 34, 144, 233, 1597) (1, 2, 3, 13, 21, 34, 377, 610, 987) (1, 2, 3, 13, 55, 144, 233, 610, 987) (1, 5, 13, 21, 34, 55, 89, 233, 1597) (1, 5, 13, 21, 34, 144, 233, 610, 987) (1, 2, 3, 5, 8, 21, 34, 144, 233, 1597) (1, 2, 3, 5, 8, 21, 34, 377, 610, 987) (1, 2, 3, 5, 8, 55, 144, 233, 610, 987) (1, 2, 3, 13, 21, 34, 55, 89, 233, 1597) (1, 2, 3, 13, 21, 34, 144, 233, 610, 987) (1, 5, 13, 21, 34, 55, 89, 233, 610, 987) (1, 2, 3, 5, 8, 21, 34, 55, 89, 233, 1597) (1, 2, 3, 5, 8, 21, 34, 144, 233, 610, 987) (1, 2, 3, 13, 21, 34, 55, 89, 233, 610, 987) (1, 2, 3, 5, 8, 21, 34, 55, 89, 233, 610, 987) 

Python 206 characters

import itertools i,j,v=1,2,[] while i<1000000: v+=[i] i,j=j,i+j y=input() for t in xrange(len(v)+1): for s in itertools.combinations(v,t): if sum(s)==y: print "+".join(map(str, s))+"\n" 
25 1+3+21 1+3+8+13 1000 13+987 5+8+987 13+377+610 2+3+8+987 5+8+377+610 13+144+233+610 2+3+8+377+610 5+8+144+233+610 13+55+89+233+610 2+3+8+144+233+610 5+8+55+89+233+610 13+21+34+89+233+610 2+3+8+55+89+233+610 5+8+21+34+89+233+610 2+3+8+21+34+89+233+610 
Post Deleted by batman
Source Link
batman
  • 369
  • 3
  • 8

Python 182 characters

import itertools i,j,v=1,2,[] while i<1000000: v+=[i] i,j=j,i+j y=input() for t in xrange(len(v)+1): for s in itertools.combinations(v,t): if sum(s)==y: print s 

Sample Run:

>9 (1, 8) (1, 3, 5) 1000 (13, 987) (5, 8, 987) (13, 377, 610) (2, 3, 8, 987) (5, 8, 377, 610) (13, 144, 233, 610) (2, 3, 8, 377, 610) (5, 8, 144, 233, 610) (13, 55, 89, 233, 610) (2, 3, 8, 144, 233, 610) (5, 8, 55, 89, 233, 610) (13, 21, 34, 89, 233, 610) (2, 3, 8, 55, 89, 233, 610) (5, 8, 21, 34, 89, 233, 610) (2, 3, 8, 21, 34, 89, 233, 610) 2048 (1, 5, 13, 55, 377, 1597) (1, 2, 3, 13, 55, 377, 1597) (1, 5, 13, 21, 34, 377, 1597) (1, 5, 13, 55, 144, 233, 1597) (1, 5, 13, 55, 377, 610, 987) (1, 2, 3, 5, 8, 55, 377, 1597) (1, 2, 3, 13, 21, 34, 377, 1597) (1, 2, 3, 13, 55, 144, 233, 1597) (1, 2, 3, 13, 55, 377, 610, 987) (1, 5, 13, 21, 34, 144, 233, 1597) (1, 5, 13, 21, 34, 377, 610, 987) (1, 5, 13, 55, 144, 233, 610, 987) (1, 2, 3, 5, 8, 21, 34, 377, 1597) (1, 2, 3, 5, 8, 55, 144, 233, 1597) (1, 2, 3, 5, 8, 55, 377, 610, 987) (1, 2, 3, 13, 21, 34, 144, 233, 1597) (1, 2, 3, 13, 21, 34, 377, 610, 987) (1, 2, 3, 13, 55, 144, 233, 610, 987) (1, 5, 13, 21, 34, 55, 89, 233, 1597) (1, 5, 13, 21, 34, 144, 233, 610, 987) (1, 2, 3, 5, 8, 21, 34, 144, 233, 1597) (1, 2, 3, 5, 8, 21, 34, 377, 610, 987) (1, 2, 3, 5, 8, 55, 144, 233, 610, 987) (1, 2, 3, 13, 21, 34, 55, 89, 233, 1597) (1, 2, 3, 13, 21, 34, 144, 233, 610, 987) (1, 5, 13, 21, 34, 55, 89, 233, 610, 987) (1, 2, 3, 5, 8, 21, 34, 55, 89, 233, 1597) (1, 2, 3, 5, 8, 21, 34, 144, 233, 610, 987) (1, 2, 3, 13, 21, 34, 55, 89, 233, 610, 987) (1, 2, 3, 5, 8, 21, 34, 55, 89, 233, 610, 987)