{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "def is_palindromes?(n)\n", " n.to_s == n.to_s.reverse\n", "end" ], "language": "python", "outputs": [], "prompt_number": 9 }, { "cell_type": "code", "collapsed": false, "input": [ "is_palindromes?(101)" ], "language": "python", "outputs": [ { "output_type": "pyout", "prompt_number": 10, "text": [ "true" ] } ], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [ "def is_palindromes_by_double?(n)\n", " n.to_s(2) == n.to_s(2).reverse\n", "end" ], "language": "python", "outputs": [], "prompt_number": 11 }, { "cell_type": "code", "collapsed": false, "input": [ "is_palindromes_by_double?(585)" ], "language": "python", "outputs": [ { "output_type": "pyout", "prompt_number": 12, "text": [ "true" ] } ], "prompt_number": 12 }, { "cell_type": "code", "collapsed": false, "input": [ "results = []\n", "(1..1_000_000).each do |n|\n", " results << n if is_palindromes?(n) and is_palindromes_by_double?(n)\n", "end\n", "results" ], "language": "python", "outputs": [ { "output_type": "pyout", "prompt_number": 13, "text": [ "[1, 3, 5, 7, 9, 33, 99, 313, 585, 717, 7447, 9009, 15351, 32223, 39993, 53235, 53835, 73737, 585585]" ] } ], "prompt_number": 13 }, { "cell_type": "code", "collapsed": false, "input": [ "results.inject *:+" ], "language": "python", "outputs": [ { "output_type": "pyout", "prompt_number": 14, "text": [ "872187" ] } ], "prompt_number": 14 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "outputs": [] } ] } ] }