add project-euler.203
							parent
							
								
									2489ac5205
								
							
						
					
					
						commit
						8ace93a75f
					
				| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
USING: project-euler.203 tools.test ;
 | 
			
		||||
IN: project-euler.203.tests
 | 
			
		||||
 | 
			
		||||
[ 105 ] [ 8 solve ] unit-test
 | 
			
		||||
[ 34029210557338 ] [ 51 solve ] unit-test
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,9 @@
 | 
			
		|||
USING: fry kernel math math.primes.factors sequences sets ;
 | 
			
		||||
IN: project-euler.203
 | 
			
		||||
 | 
			
		||||
: iterate ( n initial quot -- results ) swapd '[ @ dup ] replicate nip ; inline
 | 
			
		||||
: (generate) ( seq -- seq ) [ 0 prefix ] [ 0 suffix ] bi [ + ] 2map ;
 | 
			
		||||
: generate ( n -- seq ) 1- { 1 } [ (generate) ] iterate concat prune ;
 | 
			
		||||
: squarefree ( n -- ? ) factors duplicates empty? ;
 | 
			
		||||
: solve ( n -- n ) generate [ squarefree ] filter sum ;
 | 
			
		||||
: euler203 ( -- n ) 51 solve ;
 | 
			
		||||
		Loading…
	
		Reference in New Issue