Finished 35. Had epiphany when lying in bed. Misinterpeted circular to mean permutations.
This commit is contained in:
373
ipython/EulerProblem035.html
Normal file
373
ipython/EulerProblem035.html
Normal file
File diff suppressed because one or more lines are too long
@@ -22,19 +22,11 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 23,
|
"execution_count": 1,
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"collapsed": false
|
"collapsed": false
|
||||||
},
|
},
|
||||||
"outputs": [
|
"outputs": [],
|
||||||
{
|
|
||||||
"name": "stdout",
|
|
||||||
"output_type": "stream",
|
|
||||||
"text": [
|
|
||||||
"78498\n"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"source": [
|
"source": [
|
||||||
"def get_primes_smaller(number):\n",
|
"def get_primes_smaller(number):\n",
|
||||||
" primes = []\n",
|
" primes = []\n",
|
||||||
@@ -52,7 +44,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 24,
|
"execution_count": 2,
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"collapsed": false
|
"collapsed": false
|
||||||
},
|
},
|
||||||
@@ -75,7 +67,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 25,
|
"execution_count": 3,
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"collapsed": false
|
"collapsed": false
|
||||||
},
|
},
|
||||||
@@ -98,18 +90,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 26,
|
"execution_count": 4,
|
||||||
"metadata": {
|
|
||||||
"collapsed": true
|
|
||||||
},
|
|
||||||
"outputs": [],
|
|
||||||
"source": [
|
|
||||||
"s = [p for p in ps if is_circular(p)]"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"cell_type": "code",
|
|
||||||
"execution_count": 28,
|
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"collapsed": false
|
"collapsed": false
|
||||||
},
|
},
|
||||||
@@ -118,34 +99,71 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"[2, 3, 5, 7, 11, 13, 17, 31, 37, 71, 73, 79, 97, 113, 131, 199, 311, 337, 373, 733, 919, 991]\n"
|
"False solution 22\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"source": [
|
"source": [
|
||||||
"print(s)"
|
"s = len([p for p in ps if is_circular(p)])\n",
|
||||||
|
"print(\"False solution {}\".format(s))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"We did not read the problem properly. Cycles are obviously not the same as permutations. If we change that we should get the solution in no time."
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": null,
|
"execution_count": 5,
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"collapsed": false
|
"collapsed": false
|
||||||
},
|
},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": []
|
"source": [
|
||||||
|
"def cyles(xs):\n",
|
||||||
|
" if len(xs) <= 1:\n",
|
||||||
|
" return xs\n",
|
||||||
|
" return [xs[i:] + xs[:i] for i in range(len(xs))]\n",
|
||||||
|
"\n",
|
||||||
|
"prime_set = set(ps)\n",
|
||||||
|
"\n",
|
||||||
|
"def is_circular(p):\n",
|
||||||
|
" cs = cyles(str(p))\n",
|
||||||
|
" for c in cs:\n",
|
||||||
|
" if not int(\"\".join(c)) in prime_set:\n",
|
||||||
|
" return False\n",
|
||||||
|
" return True"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": null,
|
"execution_count": 6,
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"collapsed": true
|
"collapsed": false
|
||||||
},
|
},
|
||||||
"outputs": [],
|
"outputs": [
|
||||||
"source": []
|
{
|
||||||
|
"data": {
|
||||||
|
"text/plain": [
|
||||||
|
"55"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"execution_count": 6,
|
||||||
|
"metadata": {},
|
||||||
|
"output_type": "execute_result"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"s = len([p for p in ps if is_circular(p)])\n",
|
||||||
|
"s"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"metadata": {
|
"metadata": {
|
||||||
|
"completion_date": "Tue, 13 Feb 2018, 09:14",
|
||||||
"kernelspec": {
|
"kernelspec": {
|
||||||
"display_name": "Python 3",
|
"display_name": "Python 3",
|
||||||
"language": "python",
|
"language": "python",
|
||||||
@@ -162,7 +180,11 @@
|
|||||||
"nbconvert_exporter": "python",
|
"nbconvert_exporter": "python",
|
||||||
"pygments_lexer": "ipython3",
|
"pygments_lexer": "ipython3",
|
||||||
"version": "3.5.4"
|
"version": "3.5.4"
|
||||||
}
|
},
|
||||||
|
"tags": [
|
||||||
|
"circular",
|
||||||
|
"combinations"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"nbformat": 4,
|
"nbformat": 4,
|
||||||
"nbformat_minor": 0
|
"nbformat_minor": 0
|
||||||
|
|||||||
@@ -520,6 +520,19 @@
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>Problem 035</td>
|
||||||
|
<td>Tue, 13 Feb 2018, 09:14</td>
|
||||||
|
<td><a href="EulerProblem035.html">Problem 035</a></td>
|
||||||
|
<td>
|
||||||
|
|
||||||
|
<kbd>circular</kbd>
|
||||||
|
|
||||||
|
<kbd>combinations</kbd>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td>Problem 067</td>
|
<td>Problem 067</td>
|
||||||
<td>Fri, 5 Sep 2014, 07:36</td>
|
<td>Fri, 5 Sep 2014, 07:36</td>
|
||||||
|
|||||||
Reference in New Issue
Block a user