Last active
May 6, 2026 09:08
-
-
Save hellman/a4a56f013085edf379ac6377db0fa9bb to your computer and use it in GitHub Desktop.
Bricks OEIS A395531
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "cells": [ | |
| { | |
| "cell_type": "code", | |
| "execution_count": 1, | |
| "id": "eb0ac6ad-a4af-48a4-bd1c-509832c17b14", | |
| "metadata": { | |
| "execution": { | |
| "iopub.execute_input": "2026-05-06T09:01:00.614052Z", | |
| "iopub.status.busy": "2026-05-06T09:01:00.612773Z", | |
| "iopub.status.idle": "2026-05-06T09:01:00.650245Z", | |
| "shell.execute_reply": "2026-05-06T09:01:00.644397Z", | |
| "shell.execute_reply.started": "2026-05-06T09:01:00.613852Z" | |
| } | |
| }, | |
| "outputs": [], | |
| "source": [ | |
| "from itertools import count, takewhile\n", | |
| "def a(): # Generator function for the sequence\n", | |
| " rows = []\n", | |
| " height = 0\n", | |
| " for n in count(1):\n", | |
| " if height==0 or n <= rows[height-1]:\n", | |
| " yield n\n", | |
| " height += 1\n", | |
| " rows.append(n)\n", | |
| " else:\n", | |
| " for i in range(height-1, -1, -1):\n", | |
| " if i==0 or rows[i] + n <= rows[i-1]:\n", | |
| " rows[i] += n\n", | |
| " break" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "ab11d921-b3e1-4b3f-b8bd-0f38af520ee7", | |
| "metadata": {}, | |
| "source": [ | |
| "~2 minutes in pypy3" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 21, | |
| "id": "35f034b8-c62b-4178-a430-87c944e2d035", | |
| "metadata": { | |
| "execution": { | |
| "iopub.execute_input": "2026-05-06T08:47:56.468812Z", | |
| "iopub.status.busy": "2026-05-06T08:47:56.466382Z", | |
| "iopub.status.idle": "2026-05-06T08:47:56.577037Z", | |
| "shell.execute_reply": "2026-05-06T08:47:56.573277Z", | |
| "shell.execute_reply.started": "2026-05-06T08:47:56.467463Z" | |
| } | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "446\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "A = [None] + list(takewhile(lambda x: x<10**5, a()))\n", | |
| "A0 = A\n", | |
| "print(len(A))" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 3, | |
| "id": "50d77d15-bfed-4a55-a0b8-6ac309d454bf", | |
| "metadata": { | |
| "execution": { | |
| "iopub.execute_input": "2026-05-06T09:01:12.715889Z", | |
| "iopub.status.busy": "2026-05-06T09:01:12.713564Z", | |
| "iopub.status.idle": "2026-05-06T09:01:12.777383Z", | |
| "shell.execute_reply": "2026-05-06T09:01:12.771265Z", | |
| "shell.execute_reply.started": "2026-05-06T09:01:12.715548Z" | |
| } | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "26129 height\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "# precomputed using C++\n", | |
| "try:\n", | |
| " A = Ac = [None] + list(map(int, open(\"seq2.txt\").read().split()))\n", | |
| " A = A[:-1]\n", | |
| " print(len(A), \"height\")\n", | |
| " Ac[:len(A0)] == A0\n", | |
| "except:\n", | |
| " pass" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 5, | |
| "id": "545f873b-4227-424c-a675-5924f301a9ee", | |
| "metadata": { | |
| "execution": { | |
| "iopub.execute_input": "2026-05-06T09:01:36.730021Z", | |
| "iopub.status.busy": "2026-05-06T09:01:36.728819Z", | |
| "iopub.status.idle": "2026-05-06T09:01:36.751681Z", | |
| "shell.execute_reply": "2026-05-06T09:01:36.747022Z", | |
| "shell.execute_reply.started": "2026-05-06T09:01:36.729829Z" | |
| } | |
| }, | |
| "outputs": [], | |
| "source": [ | |
| "Arev = {val: index for index, val in enumerate(A)}" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 12, | |
| "id": "983c6f9b-65ec-4de7-8379-37bd4a6d4a38", | |
| "metadata": { | |
| "execution": { | |
| "iopub.execute_input": "2026-05-06T09:08:34.625932Z", | |
| "iopub.status.busy": "2026-05-06T09:08:34.623481Z", | |
| "iopub.status.idle": "2026-05-06T09:08:34.739570Z", | |
| "shell.execute_reply": "2026-05-06T09:08:34.735221Z", | |
| "shell.execute_reply.started": "2026-05-06T09:08:34.625627Z" | |
| } | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "n = 3, in A395531? yes, a(n) = n(n+3)/2 + -2 = A.index(n) ? True\n", | |
| "n = 6, in A395531? - , a(n) = n(n+3)/2 + -2 \n", | |
| "n = 11, in A395531? yes, a(n) = n(n+3)/2 + -4 = A.index(n) ? True\n", | |
| "n = 16, in A395531? yes, a(n) = n(n+3)/2 + -5 = A.index(n) ? True\n", | |
| "n = 22, in A395531? - , a(n) = n(n+3)/2 + -3 \n", | |
| "n = 32, in A395531? yes, a(n) = n(n+3)/2 + -7 = A.index(n) ? True\n", | |
| "n = 40, in A395531? yes, a(n) = n(n+3)/2 + -8 = A.index(n) ? True\n", | |
| "n = 49, in A395531? yes, a(n) = n(n+3)/2 + -9 = A.index(n) ? True\n", | |
| "n = 59, in A395531? yes, a(n) = n(n+3)/2 + -10 = A.index(n) ? True\n", | |
| "n = 67, in A395531? - , a(n) = n(n+3)/2 + -15 \n", | |
| "n = 70, in A395531? - , a(n) = n(n+3)/2 + -8 \n", | |
| "n = 85, in A395531? yes, a(n) = n(n+3)/2 + -12 = A.index(n) ? True\n", | |
| "n = 98, in A395531? yes, a(n) = n(n+3)/2 + -13 = A.index(n) ? True\n", | |
| "n = 112, in A395531? yes, a(n) = n(n+3)/2 + -14 = A.index(n) ? True\n", | |
| "n = 127, in A395531? yes, a(n) = n(n+3)/2 + -15 = A.index(n) ? True\n", | |
| "n = 137, in A395531? - , a(n) = n(n+3)/2 + -21 \n", | |
| "n = 143, in A395531? - , a(n) = n(n+3)/2 + -12 \n", | |
| "n = 164, in A395531? yes, a(n) = n(n+3)/2 + -17 = A.index(n) ? True\n", | |
| "n = 182, in A395531? yes, a(n) = n(n+3)/2 + -18 = A.index(n) ? True\n", | |
| "n = 201, in A395531? yes, a(n) = n(n+3)/2 + -19 = A.index(n) ? True\n", | |
| "n = 221, in A395531? yes, a(n) = n(n+3)/2 + -20 = A.index(n) ? True\n", | |
| "n = 242, in A395531? yes, a(n) = n(n+3)/2 + -21 = A.index(n) ? True\n", | |
| "n = 248, in A395531? - , a(n) = n(n+3)/2 + -24 \n", | |
| "n = 257, in A395531? - , a(n) = n(n+3)/2 + -28 \n", | |
| "n = 264, in A395531? - , a(n) = n(n+3)/2 + -14 \n", | |
| "n = 295, in A395531? yes, a(n) = n(n+3)/2 + -23 = A.index(n) ? True\n", | |
| "n = 319, in A395531? yes, a(n) = n(n+3)/2 + -24 = A.index(n) ? True\n", | |
| "n = 344, in A395531? yes, a(n) = n(n+3)/2 + -25 = A.index(n) ? True\n", | |
| "n = 370, in A395531? yes, a(n) = n(n+3)/2 + -26 = A.index(n) ? True\n", | |
| "n = 397, in A395531? yes, a(n) = n(n+3)/2 + -27 = A.index(n) ? True\n", | |
| "n = 425, in A395531? yes, a(n) = n(n+3)/2 + -28 = A.index(n) ? True\n", | |
| "n = 454, in A395531? yes, a(n) = n(n+3)/2 + -29 = A.index(n) ? True\n", | |
| "n = 484, in A395531? yes, a(n) = n(n+3)/2 + -30 = A.index(n) ? True\n", | |
| "n = 515, in A395531? yes, a(n) = n(n+3)/2 + -31 = A.index(n) ? True\n", | |
| "n = 529, in A395531? - , a(n) = n(n+3)/2 + -39 \n", | |
| "n = 547, in A395531? - , a(n) = n(n+3)/2 + -26 \n", | |
| "n = 586, in A395531? yes, a(n) = n(n+3)/2 + -33 = A.index(n) ? True\n", | |
| "n = 620, in A395531? yes, a(n) = n(n+3)/2 + -34 = A.index(n) ? True\n", | |
| "n = 655, in A395531? yes, a(n) = n(n+3)/2 + -35 = A.index(n) ? True\n", | |
| "n = 691, in A395531? yes, a(n) = n(n+3)/2 + -36 = A.index(n) ? True\n", | |
| "n = 728, in A395531? yes, a(n) = n(n+3)/2 + -37 = A.index(n) ? True\n", | |
| "n = 766, in A395531? yes, a(n) = n(n+3)/2 + -38 = A.index(n) ? True\n", | |
| "n = 805, in A395531? yes, a(n) = n(n+3)/2 + -39 = A.index(n) ? True\n", | |
| "n = 821, in A395531? - , a(n) = n(n+3)/2 + -48 \n", | |
| "n = 845, in A395531? - , a(n) = n(n+3)/2 + -33 \n", | |
| "n = 893, in A395531? yes, a(n) = n(n+3)/2 + -41 = A.index(n) ? True\n", | |
| "n = 935, in A395531? yes, a(n) = n(n+3)/2 + -42 = A.index(n) ? True\n", | |
| "n = 978, in A395531? yes, a(n) = n(n+3)/2 + -43 = A.index(n) ? True\n", | |
| "n = 1022, in A395531? yes, a(n) = n(n+3)/2 + -44 = A.index(n) ? True\n", | |
| "n = 1067, in A395531? yes, a(n) = n(n+3)/2 + -45 = A.index(n) ? True\n", | |
| "n = 1113, in A395531? yes, a(n) = n(n+3)/2 + -46 = A.index(n) ? True\n", | |
| "n = 1160, in A395531? yes, a(n) = n(n+3)/2 + -47 = A.index(n) ? True\n", | |
| "n = 1208, in A395531? yes, a(n) = n(n+3)/2 + -48 = A.index(n) ? True\n", | |
| "n = 1226, in A395531? - , a(n) = n(n+3)/2 + -58 \n", | |
| "n = 1257, in A395531? - , a(n) = n(n+3)/2 + -41 \n", | |
| "n = 1315, in A395531? yes, a(n) = n(n+3)/2 + -50 = A.index(n) ? True\n", | |
| "n = 1366, in A395531? yes, a(n) = n(n+3)/2 + -51 = A.index(n) ? True\n", | |
| "n = 1418, in A395531? yes, a(n) = n(n+3)/2 + -52 = A.index(n) ? True\n", | |
| "n = 1471, in A395531? yes, a(n) = n(n+3)/2 + -53 = A.index(n) ? True\n", | |
| "n = 1525, in A395531? yes, a(n) = n(n+3)/2 + -54 = A.index(n) ? True\n", | |
| "n = 1580, in A395531? yes, a(n) = n(n+3)/2 + -55 = A.index(n) ? True\n", | |
| "n = 1636, in A395531? yes, a(n) = n(n+3)/2 + -56 = A.index(n) ? True\n", | |
| "n = 1693, in A395531? yes, a(n) = n(n+3)/2 + -57 = A.index(n) ? True\n", | |
| "n = 1751, in A395531? yes, a(n) = n(n+3)/2 + -58 = A.index(n) ? True\n", | |
| "n = 1771, in A395531? - , a(n) = n(n+3)/2 + -69 \n", | |
| "n = 1810, in A395531? - , a(n) = n(n+3)/2 + -50 \n", | |
| "n = 1879, in A395531? yes, a(n) = n(n+3)/2 + -60 = A.index(n) ? True\n", | |
| "n = 1940, in A395531? yes, a(n) = n(n+3)/2 + -61 = A.index(n) ? True\n", | |
| "n = 2002, in A395531? yes, a(n) = n(n+3)/2 + -62 = A.index(n) ? True\n", | |
| "n = 2065, in A395531? yes, a(n) = n(n+3)/2 + -63 = A.index(n) ? True\n", | |
| "n = 2129, in A395531? yes, a(n) = n(n+3)/2 + -64 = A.index(n) ? True\n", | |
| "n = 2194, in A395531? yes, a(n) = n(n+3)/2 + -65 = A.index(n) ? True\n", | |
| "n = 2260, in A395531? yes, a(n) = n(n+3)/2 + -66 = A.index(n) ? True\n", | |
| "n = 2268, in A395531? - , a(n) = n(n+3)/2 + -71 \n", | |
| "n = 2327, in A395531? - , a(n) = n(n+3)/2 + -64 \n", | |
| "n = 2398, in A395531? yes, a(n) = n(n+3)/2 + -68 = A.index(n) ? True\n", | |
| "n = 2467, in A395531? yes, a(n) = n(n+3)/2 + -69 = A.index(n) ? True\n", | |
| "n = 2489, in A395531? - , a(n) = n(n+3)/2 + -81 \n", | |
| "n = 2537, in A395531? - , a(n) = n(n+3)/2 + -60 \n", | |
| "n = 2618, in A395531? yes, a(n) = n(n+3)/2 + -71 = A.index(n) ? True\n", | |
| "n = 2690, in A395531? yes, a(n) = n(n+3)/2 + -72 = A.index(n) ? True\n", | |
| "n = 2763, in A395531? yes, a(n) = n(n+3)/2 + -73 = A.index(n) ? True\n", | |
| "n = 2837, in A395531? yes, a(n) = n(n+3)/2 + -74 = A.index(n) ? True\n", | |
| "n = 2912, in A395531? yes, a(n) = n(n+3)/2 + -75 = A.index(n) ? True\n", | |
| "n = 2988, in A395531? yes, a(n) = n(n+3)/2 + -76 = A.index(n) ? True\n", | |
| "n = 3065, in A395531? yes, a(n) = n(n+3)/2 + -77 = A.index(n) ? True\n", | |
| "n = 3143, in A395531? yes, a(n) = n(n+3)/2 + -78 = A.index(n) ? True\n", | |
| "n = 3222, in A395531? yes, a(n) = n(n+3)/2 + -79 = A.index(n) ? True\n", | |
| "n = 3302, in A395531? yes, a(n) = n(n+3)/2 + -80 = A.index(n) ? True\n", | |
| "n = 3383, in A395531? yes, a(n) = n(n+3)/2 + -81 = A.index(n) ? True\n", | |
| "n = 3465, in A395531? yes, a(n) = n(n+3)/2 + -82 = A.index(n) ? True\n", | |
| "n = 3548, in A395531? yes, a(n) = n(n+3)/2 + -83 = A.index(n) ? True\n", | |
| "n = 3632, in A395531? yes, a(n) = n(n+3)/2 + -84 = A.index(n) ? True\n", | |
| "n = 3656, in A395531? - , a(n) = n(n+3)/2 + -97 \n", | |
| "n = 3717, in A395531? - , a(n) = n(n+3)/2 + -74 \n", | |
| "n = 3814, in A395531? yes, a(n) = n(n+3)/2 + -86 = A.index(n) ? True\n", | |
| "n = 3901, in A395531? yes, a(n) = n(n+3)/2 + -87 = A.index(n) ? True\n", | |
| "n = 3989, in A395531? yes, a(n) = n(n+3)/2 + -88 = A.index(n) ? True\n", | |
| "n = 4078, in A395531? yes, a(n) = n(n+3)/2 + -89 = A.index(n) ? True\n", | |
| "n = 4168, in A395531? yes, a(n) = n(n+3)/2 + -90 = A.index(n) ? True\n", | |
| "n = 4259, in A395531? yes, a(n) = n(n+3)/2 + -91 = A.index(n) ? True\n", | |
| "n = 4351, in A395531? yes, a(n) = n(n+3)/2 + -92 = A.index(n) ? True\n", | |
| "n = 4444, in A395531? yes, a(n) = n(n+3)/2 + -93 = A.index(n) ? True\n", | |
| "n = 4538, in A395531? yes, a(n) = n(n+3)/2 + -94 = A.index(n) ? True\n", | |
| "n = 4633, in A395531? yes, a(n) = n(n+3)/2 + -95 = A.index(n) ? True\n", | |
| "n = 4729, in A395531? yes, a(n) = n(n+3)/2 + -96 = A.index(n) ? True\n", | |
| "n = 4826, in A395531? yes, a(n) = n(n+3)/2 + -97 = A.index(n) ? True\n", | |
| "n = 4852, in A395531? - , a(n) = n(n+3)/2 + -111 \n", | |
| "n = 4924, in A395531? - , a(n) = n(n+3)/2 + -86 \n", | |
| "n = 5035, in A395531? yes, a(n) = n(n+3)/2 + -99 = A.index(n) ? True\n", | |
| "n = 5135, in A395531? yes, a(n) = n(n+3)/2 + -100 = A.index(n) ? True\n", | |
| "n = 5236, in A395531? yes, a(n) = n(n+3)/2 + -101 = A.index(n) ? True\n", | |
| "n = 5338, in A395531? yes, a(n) = n(n+3)/2 + -102 = A.index(n) ? True\n", | |
| "n = 5441, in A395531? yes, a(n) = n(n+3)/2 + -103 = A.index(n) ? True\n", | |
| "n = 5545, in A395531? yes, a(n) = n(n+3)/2 + -104 = A.index(n) ? True\n", | |
| "n = 5650, in A395531? yes, a(n) = n(n+3)/2 + -105 = A.index(n) ? True\n", | |
| "n = 5756, in A395531? yes, a(n) = n(n+3)/2 + -106 = A.index(n) ? True\n", | |
| "n = 5863, in A395531? yes, a(n) = n(n+3)/2 + -107 = A.index(n) ? True\n", | |
| "n = 5971, in A395531? yes, a(n) = n(n+3)/2 + -108 = A.index(n) ? True\n", | |
| "n = 6080, in A395531? yes, a(n) = n(n+3)/2 + -109 = A.index(n) ? True\n", | |
| "n = 6190, in A395531? yes, a(n) = n(n+3)/2 + -110 = A.index(n) ? True\n", | |
| "n = 6301, in A395531? yes, a(n) = n(n+3)/2 + -111 = A.index(n) ? True\n", | |
| "n = 6329, in A395531? - , a(n) = n(n+3)/2 + -126 \n", | |
| "n = 6413, in A395531? - , a(n) = n(n+3)/2 + -99 \n", | |
| "n = 6539, in A395531? yes, a(n) = n(n+3)/2 + -113 = A.index(n) ? True\n", | |
| "n = 6653, in A395531? yes, a(n) = n(n+3)/2 + -114 = A.index(n) ? True\n", | |
| "n = 6768, in A395531? yes, a(n) = n(n+3)/2 + -115 = A.index(n) ? True\n", | |
| "n = 6884, in A395531? yes, a(n) = n(n+3)/2 + -116 = A.index(n) ? True\n", | |
| "n = 7001, in A395531? yes, a(n) = n(n+3)/2 + -117 = A.index(n) ? True\n", | |
| "n = 7119, in A395531? yes, a(n) = n(n+3)/2 + -118 = A.index(n) ? True\n", | |
| "n = 7238, in A395531? yes, a(n) = n(n+3)/2 + -119 = A.index(n) ? True\n", | |
| "n = 7358, in A395531? yes, a(n) = n(n+3)/2 + -120 = A.index(n) ? True\n", | |
| "n = 7479, in A395531? yes, a(n) = n(n+3)/2 + -121 = A.index(n) ? True\n", | |
| "n = 7601, in A395531? yes, a(n) = n(n+3)/2 + -122 = A.index(n) ? True\n", | |
| "n = 7724, in A395531? yes, a(n) = n(n+3)/2 + -123 = A.index(n) ? True\n", | |
| "n = 7848, in A395531? yes, a(n) = n(n+3)/2 + -124 = A.index(n) ? True\n", | |
| "n = 7973, in A395531? yes, a(n) = n(n+3)/2 + -125 = A.index(n) ? True\n", | |
| "n = 8099, in A395531? yes, a(n) = n(n+3)/2 + -126 = A.index(n) ? True\n", | |
| "n = 8129, in A395531? - , a(n) = n(n+3)/2 + -142 \n", | |
| "n = 8226, in A395531? - , a(n) = n(n+3)/2 + -113 \n", | |
| "n = 8368, in A395531? yes, a(n) = n(n+3)/2 + -128 = A.index(n) ? True\n", | |
| "n = 8497, in A395531? yes, a(n) = n(n+3)/2 + -129 = A.index(n) ? True\n", | |
| "n = 8627, in A395531? yes, a(n) = n(n+3)/2 + -130 = A.index(n) ? True\n", | |
| "n = 8758, in A395531? yes, a(n) = n(n+3)/2 + -131 = A.index(n) ? True\n", | |
| "n = 8890, in A395531? yes, a(n) = n(n+3)/2 + -132 = A.index(n) ? True\n", | |
| "n = 9023, in A395531? yes, a(n) = n(n+3)/2 + -133 = A.index(n) ? True\n", | |
| "n = 9157, in A395531? yes, a(n) = n(n+3)/2 + -134 = A.index(n) ? True\n", | |
| "n = 9292, in A395531? yes, a(n) = n(n+3)/2 + -135 = A.index(n) ? True\n", | |
| "n = 9428, in A395531? yes, a(n) = n(n+3)/2 + -136 = A.index(n) ? True\n", | |
| "n = 9438, in A395531? - , a(n) = n(n+3)/2 + -142 \n", | |
| "n = 9565, in A395531? - , a(n) = n(n+3)/2 + -133 \n", | |
| "n = 9707, in A395531? yes, a(n) = n(n+3)/2 + -138 = A.index(n) ? True\n", | |
| "n = 9846, in A395531? yes, a(n) = n(n+3)/2 + -139 = A.index(n) ? True\n", | |
| "n = 9986, in A395531? yes, a(n) = n(n+3)/2 + -140 = A.index(n) ? True\n", | |
| "n = 10127, in A395531? yes, a(n) = n(n+3)/2 + -141 = A.index(n) ? True\n", | |
| "n = 10269, in A395531? yes, a(n) = n(n+3)/2 + -142 = A.index(n) ? True\n", | |
| "n = 10301, in A395531? - , a(n) = n(n+3)/2 + -159 \n", | |
| "n = 10412, in A395531? - , a(n) = n(n+3)/2 + -128 \n", | |
| "n = 10571, in A395531? yes, a(n) = n(n+3)/2 + -144 = A.index(n) ? True\n", | |
| "n = 10716, in A395531? yes, a(n) = n(n+3)/2 + -145 = A.index(n) ? True\n", | |
| "n = 10862, in A395531? yes, a(n) = n(n+3)/2 + -146 = A.index(n) ? True\n", | |
| "n = 11009, in A395531? yes, a(n) = n(n+3)/2 + -147 = A.index(n) ? True\n", | |
| "n = 11157, in A395531? yes, a(n) = n(n+3)/2 + -148 = A.index(n) ? True\n", | |
| "n = 11306, in A395531? yes, a(n) = n(n+3)/2 + -149 = A.index(n) ? True\n", | |
| "n = 11456, in A395531? yes, a(n) = n(n+3)/2 + -150 = A.index(n) ? True\n", | |
| "n = 11607, in A395531? yes, a(n) = n(n+3)/2 + -151 = A.index(n) ? True\n", | |
| "n = 11759, in A395531? yes, a(n) = n(n+3)/2 + -152 = A.index(n) ? True\n", | |
| "n = 11912, in A395531? yes, a(n) = n(n+3)/2 + -153 = A.index(n) ? True\n", | |
| "n = 12066, in A395531? yes, a(n) = n(n+3)/2 + -154 = A.index(n) ? True\n", | |
| "n = 12221, in A395531? yes, a(n) = n(n+3)/2 + -155 = A.index(n) ? True\n", | |
| "n = 12377, in A395531? yes, a(n) = n(n+3)/2 + -156 = A.index(n) ? True\n", | |
| "n = 12534, in A395531? yes, a(n) = n(n+3)/2 + -157 = A.index(n) ? True\n", | |
| "n = 12692, in A395531? yes, a(n) = n(n+3)/2 + -158 = A.index(n) ? True\n", | |
| "n = 12851, in A395531? yes, a(n) = n(n+3)/2 + -159 = A.index(n) ? True\n", | |
| "n = 13011, in A395531? yes, a(n) = n(n+3)/2 + -160 = A.index(n) ? True\n", | |
| "n = 13172, in A395531? yes, a(n) = n(n+3)/2 + -161 = A.index(n) ? True\n", | |
| "n = 13334, in A395531? yes, a(n) = n(n+3)/2 + -162 = A.index(n) ? True\n", | |
| "n = 13497, in A395531? yes, a(n) = n(n+3)/2 + -163 = A.index(n) ? True\n", | |
| "n = 13531, in A395531? - , a(n) = n(n+3)/2 + -181 \n", | |
| "n = 13661, in A395531? - , a(n) = n(n+3)/2 + -148 \n", | |
| "n = 13842, in A395531? yes, a(n) = n(n+3)/2 + -165 = A.index(n) ? True\n", | |
| "n = 14008, in A395531? yes, a(n) = n(n+3)/2 + -166 = A.index(n) ? True\n", | |
| "n = 14175, in A395531? yes, a(n) = n(n+3)/2 + -167 = A.index(n) ? True\n", | |
| "n = 14343, in A395531? yes, a(n) = n(n+3)/2 + -168 = A.index(n) ? True\n", | |
| "n = 14512, in A395531? yes, a(n) = n(n+3)/2 + -169 = A.index(n) ? True\n", | |
| "n = 14682, in A395531? yes, a(n) = n(n+3)/2 + -170 = A.index(n) ? True\n", | |
| "n = 14853, in A395531? yes, a(n) = n(n+3)/2 + -171 = A.index(n) ? True\n", | |
| "n = 15025, in A395531? yes, a(n) = n(n+3)/2 + -172 = A.index(n) ? True\n", | |
| "n = 15198, in A395531? yes, a(n) = n(n+3)/2 + -173 = A.index(n) ? True\n", | |
| "n = 15372, in A395531? yes, a(n) = n(n+3)/2 + -174 = A.index(n) ? True\n", | |
| "n = 15547, in A395531? yes, a(n) = n(n+3)/2 + -175 = A.index(n) ? True\n", | |
| "n = 15723, in A395531? yes, a(n) = n(n+3)/2 + -176 = A.index(n) ? True\n", | |
| "n = 15900, in A395531? yes, a(n) = n(n+3)/2 + -177 = A.index(n) ? True\n", | |
| "n = 16078, in A395531? yes, a(n) = n(n+3)/2 + -178 = A.index(n) ? True\n", | |
| "n = 16257, in A395531? yes, a(n) = n(n+3)/2 + -179 = A.index(n) ? True\n", | |
| "n = 16437, in A395531? yes, a(n) = n(n+3)/2 + -180 = A.index(n) ? True\n", | |
| "n = 16618, in A395531? yes, a(n) = n(n+3)/2 + -181 = A.index(n) ? True\n", | |
| "n = 16654, in A395531? - , a(n) = n(n+3)/2 + -200 \n", | |
| "n = 16800, in A395531? - , a(n) = n(n+3)/2 + -165 \n", | |
| "n = 17000, in A395531? yes, a(n) = n(n+3)/2 + -183 = A.index(n) ? True\n", | |
| "n = 17184, in A395531? yes, a(n) = n(n+3)/2 + -184 = A.index(n) ? True\n", | |
| "n = 17369, in A395531? yes, a(n) = n(n+3)/2 + -185 = A.index(n) ? True\n", | |
| "n = 17555, in A395531? yes, a(n) = n(n+3)/2 + -186 = A.index(n) ? True\n", | |
| "n = 17742, in A395531? yes, a(n) = n(n+3)/2 + -187 = A.index(n) ? True\n", | |
| "n = 17930, in A395531? yes, a(n) = n(n+3)/2 + -188 = A.index(n) ? True\n", | |
| "n = 18119, in A395531? yes, a(n) = n(n+3)/2 + -189 = A.index(n) ? True\n", | |
| "n = 18309, in A395531? yes, a(n) = n(n+3)/2 + -190 = A.index(n) ? True\n", | |
| "n = 18500, in A395531? yes, a(n) = n(n+3)/2 + -191 = A.index(n) ? True\n", | |
| "n = 18692, in A395531? yes, a(n) = n(n+3)/2 + -192 = A.index(n) ? True\n", | |
| "n = 18885, in A395531? yes, a(n) = n(n+3)/2 + -193 = A.index(n) ? True\n", | |
| "n = 19079, in A395531? yes, a(n) = n(n+3)/2 + -194 = A.index(n) ? True\n", | |
| "n = 19274, in A395531? yes, a(n) = n(n+3)/2 + -195 = A.index(n) ? True\n", | |
| "n = 19470, in A395531? yes, a(n) = n(n+3)/2 + -196 = A.index(n) ? True\n", | |
| "n = 19667, in A395531? yes, a(n) = n(n+3)/2 + -197 = A.index(n) ? True\n", | |
| "n = 19865, in A395531? yes, a(n) = n(n+3)/2 + -198 = A.index(n) ? True\n", | |
| "n = 20064, in A395531? yes, a(n) = n(n+3)/2 + -199 = A.index(n) ? True\n", | |
| "n = 20264, in A395531? yes, a(n) = n(n+3)/2 + -200 = A.index(n) ? True\n", | |
| "n = 20302, in A395531? - , a(n) = n(n+3)/2 + -220 \n", | |
| "n = 20465, in A395531? - , a(n) = n(n+3)/2 + -183 \n", | |
| "n = 20685, in A395531? yes, a(n) = n(n+3)/2 + -202 = A.index(n) ? True\n", | |
| "n = 20888, in A395531? yes, a(n) = n(n+3)/2 + -203 = A.index(n) ? True\n", | |
| "n = 21092, in A395531? yes, a(n) = n(n+3)/2 + -204 = A.index(n) ? True\n", | |
| "n = 21297, in A395531? yes, a(n) = n(n+3)/2 + -205 = A.index(n) ? True\n", | |
| "n = 21503, in A395531? yes, a(n) = n(n+3)/2 + -206 = A.index(n) ? True\n", | |
| "n = 21710, in A395531? yes, a(n) = n(n+3)/2 + -207 = A.index(n) ? True\n", | |
| "n = 21918, in A395531? yes, a(n) = n(n+3)/2 + -208 = A.index(n) ? True\n", | |
| "n = 22127, in A395531? yes, a(n) = n(n+3)/2 + -209 = A.index(n) ? True\n", | |
| "n = 22337, in A395531? yes, a(n) = n(n+3)/2 + -210 = A.index(n) ? True\n", | |
| "n = 22548, in A395531? yes, a(n) = n(n+3)/2 + -211 = A.index(n) ? True\n", | |
| "n = 22760, in A395531? yes, a(n) = n(n+3)/2 + -212 = A.index(n) ? True\n", | |
| "n = 22973, in A395531? yes, a(n) = n(n+3)/2 + -213 = A.index(n) ? True\n", | |
| "n = 23187, in A395531? yes, a(n) = n(n+3)/2 + -214 = A.index(n) ? True\n", | |
| "n = 23402, in A395531? yes, a(n) = n(n+3)/2 + -215 = A.index(n) ? True\n", | |
| "n = 23618, in A395531? yes, a(n) = n(n+3)/2 + -216 = A.index(n) ? True\n", | |
| "n = 23835, in A395531? yes, a(n) = n(n+3)/2 + -217 = A.index(n) ? True\n", | |
| "n = 24053, in A395531? yes, a(n) = n(n+3)/2 + -218 = A.index(n) ? True\n", | |
| "n = 24272, in A395531? yes, a(n) = n(n+3)/2 + -219 = A.index(n) ? True\n", | |
| "n = 24492, in A395531? yes, a(n) = n(n+3)/2 + -220 = A.index(n) ? True\n", | |
| "n = 24532, in A395531? - , a(n) = n(n+3)/2 + -241 \n", | |
| "n = 24713, in A395531? - , a(n) = n(n+3)/2 + -202 \n", | |
| "n = 24954, in A395531? yes, a(n) = n(n+3)/2 + -222 = A.index(n) ? True\n", | |
| "n = 25177, in A395531? yes, a(n) = n(n+3)/2 + -223 = A.index(n) ? True\n", | |
| "n = 25401, in A395531? yes, a(n) = n(n+3)/2 + -224 = A.index(n) ? True\n", | |
| "n = 25626, in A395531? yes, a(n) = n(n+3)/2 + -225 = A.index(n) ? True\n", | |
| "n = 25852, in A395531? yes, a(n) = n(n+3)/2 + -226 = A.index(n) ? True\n", | |
| "n = 26079, in A395531? yes, a(n) = n(n+3)/2 + -227 = A.index(n) ? True\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "for n in range(2, len(A)):\n", | |
| " if A[n] - A[n-1] != n:\n", | |
| " in_A = [\" - \", \"yes\"][n in Arev]\n", | |
| " \n", | |
| " print(f\"n = {n:5d}, in A395531? {in_A}, a(n) = n(n+3)/2 + {A[n] - n*(n+3)//2}\", end=\" \")\n", | |
| " if n in Arev:\n", | |
| " print(\"= A.index(n) ? \", A[n] == n*(n+3)//2 - Arev[n])\n", | |
| " assert A[n] == n*(n+3)//2 - Arev[n]\n", | |
| " else:\n", | |
| " print()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": null, | |
| "id": "bad5ec4a-25fd-4065-95cd-8ea49fae7cd7", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [] | |
| } | |
| ], | |
| "metadata": { | |
| "kernelspec": { | |
| "display_name": "pypy3", | |
| "language": "python", | |
| "name": "pypy3" | |
| }, | |
| "language_info": { | |
| "codemirror_mode": { | |
| "name": "ipython", | |
| "version": 3 | |
| }, | |
| "file_extension": ".py", | |
| "mimetype": "text/x-python", | |
| "name": "python", | |
| "nbconvert_exporter": "python", | |
| "pygments_lexer": "ipython3", | |
| "version": "3.11.13" | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 5 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment