various project euler solutions