some-advent-of-code: diff dbcceed9 40669214

Branch: master

Commit: dbcceed90ae0239ad9451d837cae064a967b4cdc

Author: Nicholas Prado <nmprado@nzen.ws>
Date: Sat Dec 4 05:24:18 UTC 2021
Parent: 406692140fa6c7e4fdd7674bc8a4118db9e3030d
Log message:

    feat 21 03.1 running total, calc binary

    1: diff --git a/src/java/y2021/Exercise210301.java b/src/java/y2021/Exercise210301.java
    2: new file mode 100644
    3: index 0000000..73a6496
    4: --- /dev/null
    5: +++ b/src/java/y2021/Exercise210301.java
    6: @@ -0,0 +1,105 @@
    7: +
    8: +import java.io.IOException;
    9: +import java.nio.file.*;
   10: +import java.util.*;
   11: +
   12: +public class Exercise210301
   13: +{
   14: +
   15: +	public static void main(
   16: +			String args[]
   17: +	) {
   18: +		final String here = "e210301.m ";
   19: +		if ( args.length < 1 )
   20: +		{
   21: +			throw new RuntimeException( here +"add a filename argument" );
   22: +		}
   23: +		String userSaysFile = args[ 0 ];
   24: +		List<String> fileLines = new LinkedList<>();
   25: +		try
   26: +		{
   27: +			Path where = Paths.get( userSaysFile );
   28: +			fileLines = Files.readAllLines( where );
   29: +		}
   30: +		catch ( IOException | InvalidPathException ie )
   31: +		{
   32: +			System.err.println( here +"couldn't read file "+ userSaysFile +" because "+ ie );
   33: +			return;
   34: +		}
   35: +		/*
   36: +		- interpretation of spec -
   37: +		gamma is the more common bit, epsilon is the less common bit
   38: +		put these in a bit set and multiply the resulting binary number
   39: +		*/
   40: +		Exercise210301.interpretDiagnostic( fileLines );
   41: +	}
   42: +
   43: +
   44: +	private static void interpretDiagnostic(
   45: +			List<String> fileLines
   46: +	) {
   47: +		final int oneInd = 0, nilInd = oneInd +1;
   48: +		int[][] bitCounts = new int[ 2 ][ fileLines.get( 0 ).length() ];
   49: +		for ( int initInd = 0; initInd < bitCounts[ oneInd ].length; initInd++ )
   50: +		{
   51: +			bitCounts[ oneInd ][ initInd ] = 0;
   52: +			bitCounts[ nilInd ][ initInd ] = 0;
   53: +		}
   54: +
   55: +		// sum bits
   56: +		for ( String line : fileLines )
   57: +		{
   58: +			if ( line.isEmpty() )
   59: +				continue;
   60: +			for ( int charInd = 0; charInd < line.length(); charInd++ )
   61: +			{
   62: +				if ( line.charAt( charInd ) == '1' )
   63: +					bitCounts[ oneInd ][ charInd ] += 1;
   64: +				else // == 0
   65: +					bitCounts[ nilInd ][ charInd ] += 1;
   66: +			}
   67: +		}
   68: +
   69: +		// determine gamma and epsilon
   70: +		long gamma = 0L, epsilon = 0L, multiplier = 1;
   71: +		for ( int bitInd = bitCounts[ oneInd ].length -1; bitInd >= 0; bitInd-- )
   72: +		{
   73: +			if ( bitCounts[ oneInd ][ bitInd ] > bitCounts[ nilInd ][ bitInd ] )
   74: +				gamma += multiplier;
   75: +			else
   76: +				epsilon += multiplier;
   77: +			multiplier *= 2;
   78: +		}
   79: +
   80: +		System.out.println( "\tg"+ gamma +" e"+ epsilon +" t"+ gamma * epsilon );
   81: +	}
   82: +
   83: +
   84: +}
   85: +
   86: +
   87: +
   88: +
   89: +
   90: +
   91: +
   92: +
   93: +
   94: +
   95: +
   96: +
   97: +
   98: +
   99: +
  100: +
  101: +
  102: +
  103: +
  104: +
  105: +
  106: +
  107: +
  108: +
  109: +
  110: +
  111: +
  112: diff --git a/src/res/y2021/21_03_example.txt b/src/res/y2021/21_03_example.txt
  113: new file mode 100644
  114: index 0000000..665fd57
  115: --- /dev/null
  116: +++ b/src/res/y2021/21_03_example.txt
  117: @@ -0,0 +1,12 @@
  118: +00100
  119: +11110
  120: +10110
  121: +10111
  122: +10101
  123: +01111
  124: +00111
  125: +11100
  126: +10000
  127: +11001
  128: +00010
  129: +01010
  130: \ No newline at end of file
  131: diff --git a/src/res/y2021/21_03_input.txt b/src/res/y2021/21_03_input.txt
  132: new file mode 100644
  133: index 0000000..4c5a9e7
  134: --- /dev/null
  135: +++ b/src/res/y2021/21_03_input.txt
  136: @@ -0,0 +1,1000 @@
  137: +010011001001
  138: +110101011110
  139: +111111000101
  140: +100111111001
  141: +000000011111
  142: +111100100111
  143: +011111100000
  144: +001001011100
  145: +101100111011
  146: +010001010100
  147: +111011001010
  148: +010001100011
  149: +110110011011
  150: +011011000001
  151: +001100101100
  152: +001000101100
  153: +100000001010
  154: +001111110000
  155: +100101000000
  156: +010000100000
  157: +010100110000
  158: +110000111101
  159: +000001011010
  160: +000011011001
  161: +011000101110
  162: +100011100101
  163: +110010010100
  164: +001110110101
  165: +100011000000
  166: +110100111100
  167: +100100001111
  168: +010110011001
  169: +000001111101
  170: +100001000010
  171: +110010101110
  172: +000101001100
  173: +100100010010
  174: +111111101000
  175: +001010111001
  176: +100101000001
  177: +001101101110
  178: +101100011010
  179: +100100011100
  180: +111100000111
  181: +101011000100
  182: +110000101010
  183: +101100111010
  184: +101100010101
  185: +001011111101
  186: +011010000110
  187: +001101000011
  188: +110001001110
  189: +011010101111
  190: +001111111011
  191: +001100100001
  192: +111010110001
  193: +011011111100
  194: +001011111001
  195: +111110111110
  196: +011111001011
  197: +110110011101
  198: +111110011011
  199: +101101010010
  200: +110111011110
  201: +111011110100
  202: +111110001011
  203: +110100000010
  204: +000011111001
  205: +100001001111
  206: +101110101010
  207: +000111111011
  208: +011110110001
  209: +000011110110
  210: +011101001011
  211: +010011001110
  212: +101110011110
  213: +110101010011
  214: +111010100011
  215: +010101011001
  216: +011011010101
  217: +000010110100
  218: +010011001000
  219: +110000010010
  220: +101111111001
  221: +000100111011
  222: +011101010101
  223: +100011101111
  224: +001010110100
  225: +101101000110
  226: +011100111011
  227: +000100010111
  228: +010111100000
  229: +100100111110
  230: +110110001111
  231: +010010010111
  232: +001000001110
  233: +001110000101
  234: +001111101100
  235: +101100111110
  236: +111011010111
  237: +110110111000
  238: +000111110001
  239: +111001101001
  240: +011111001000
  241: +001110100011
  242: +111100100010
  243: +010111101000
  244: +111100110101
  245: +111100111010
  246: +010100110110
  247: +100101111100
  248: +101000011000
  249: +011011111111
  250: +010000111100
  251: +101111000000
  252: +100001011000
  253: +110010010110
  254: +111000011011
  255: +010100110111
  256: +100100110011
  257: +000010011101
  258: +010001100111
  259: +011000110011
  260: +100101001101
  261: +110111011011
  262: +000100001000
  263: +011111100101
  264: +110110111100
  265: +100010010100
  266: +110110110111
  267: +111000111011
  268: +101101111000
  269: +000000110110
  270: +101111111010
  271: +000110000001
  272: +011111000110
  273: +110010100111
  274: +111010101111
  275: +101011000010
  276: +011001010111
  277: +010100111110
  278: +110001111000
  279: +110101101111
  280: +011001000110
  281: +111000111111
  282: +010100100111
  283: +100001100001
  284: +110101011010
  285: +000110111000
  286: +101101001010
  287: +010110100110
  288: +111101101010
  289: +110100011111
  290: +101010010000
  291: +001100001001
  292: +001000000101
  293: +111000010001
  294: +100100101100
  295: +001111100011
  296: +110110010000
  297: +011010111010
  298: +011001110110
  299: +000000100111
  300: +011110111100
  301: +011101000101
  302: +011000111010
  303: +110110100011
  304: +101110101000
  305: +111001111001
  306: +010001000001
  307: +111000111100
  308: +001011101011
  309: +110111111111
  310: +010111011101
  311: +110010001010
  312: +011111000100
  313: +011001100110
  314: +011100000010
  315: +000101100010
  316: +000111111010
  317: +000000010101
  318: +010011110110
  319: +000111111101
  320: +101101000010
  321: +101111010001
  322: +011110001101
  323: +100000000111
  324: +110111111110
  325: +000010011110
  326: +111000010010
  327: +110011110011
  328: +101101101011
  329: +011011101110
  330: +101011011000
  331: +000101101001
  332: +010110100011
  333: +011001100111
  334: +011101000011
  335: +001110010110
  336: +001001010010
  337: +111110101001
  338: +001111001001
  339: +010101001111
  340: +100111100001
  341: +011100010101
  342: +100001110011
  343: +010001110001
  344: +101011010101
  345: +000100000110
  346: +100101110001
  347: +100101110010
  348: +111011011001
  349: +100110101101
  350: +101100110001
  351: +101111100101
  352: +001010000000
  353: +011000100011
  354: +010010001111
  355: +011100011101
  356: +001100110010
  357: +000001011111
  358: +101111000011
  359: +111000111110
  360: +011111100100
  361: +100110000000
  362: +011110110100
  363: +001100101011
  364: +110010101010
  365: +010011100100
  366: +011000010100
  367: +001101100101
  368: +101010101000
  369: +011110011010
  370: +010010001100
  371: +010100010001
  372: +010001011011
  373: +110010011001
  374: +010111000101
  375: +111011010110
  376: +111010111100
  377: +011111101000
  378: +100110010100
  379: +010101011011
  380: +010111001011
  381: +011110010011
  382: +011000011110
  383: +100001000111
  384: +000011111101
  385: +111100101001
  386: +000000100011
  387: +110011100100
  388: +101111100001
  389: +010011110111
  390: +101000001011
  391: +001101111001
  392: +100111000011
  393: +000001000100
  394: +100100010000
  395: +000010010100
  396: +000111111001
  397: +000100100010
  398: +011011011111
  399: +010110011110
  400: +001101010011
  401: +110111101001
  402: +111011101111
  403: +100110000100
  404: +001101110111
  405: +010101101110
  406: +011010100011
  407: +010010100101
  408: +101110110110
  409: +111000001011
  410: +010001101000
  411: +111101100110
  412: +100111010001
  413: +100010011010
  414: +101111001000
  415: +011000100000
  416: +111000010101
  417: +100101011001
  418: +011011110011
  419: +110011001010
  420: +000110010111
  421: +101000010011
  422: +100100111100
  423: +001111000001
  424: +001110101101
  425: +100111100011
  426: +011001011101
  427: +111000000000
  428: +101001010011
  429: +000000111101
  430: +000011000000
  431: +001011000100
  432: +011111111011
  433: +000111101111
  434: +101100011000
  435: +111011000001
  436: +101000000111
  437: +111110000100
  438: +101001110100
  439: +010111000001
  440: +010010101001
  441: +110011001111
  442: +100010000010
  443: +001001001010
  444: +100110010110
  445: +101100110010
  446: +111000111010
  447: +101110011111
  448: +110111111001
  449: +011010110011
  450: +111010100010
  451: +110000011000
  452: +011000101011
  453: +001001000001
  454: +000100110010
  455: +111100000000
  456: +001010100101
  457: +101011010110
  458: +110001010100
  459: +101111010000
  460: +000110000000
  461: +111110011000
  462: +110011110111
  463: +011010111001
  464: +001100110110
  465: +111111111101
  466: +001010010001
  467: +101001111000
  468: +000100110101
  469: +000100111111
  470: +100000110111
  471: +001011100001
  472: +001010111000
  473: +100010101100
  474: +110110000111
  475: +100101010010
  476: +101001001010
  477: +110000011101
  478: +111010010101
  479: +001011011000
  480: +101101101001
  481: +010101111011
  482: +101010011100
  483: +000010000011
  484: +001110110110
  485: +111100001111
  486: +011000000001
  487: +000000111010
  488: +000110011110
  489: +010100110010
  490: +000111010000
  491: +110111110111
  492: +110000000101
  493: +011111111111
  494: +010101000011
  495: +110000101000
  496: +000001110001
  497: +010001010010
  498: +100100010110
  499: +000100101110
  500: +100011011000
  501: +000110010001
  502: +100000001001
  503: +011010010001
  504: +010111101011
  505: +101101101100
  506: +001101100001
  507: +010101111101
  508: +001010101110
  509: +001110001001
  510: +100101110110
  511: +001000110011
  512: +010001011110
  513: +100110011001
  514: +010100101110
  515: +101101111011
  516: +001110110011
  517: +000111001111
  518: +100100110110
  519: +101000111101
  520: +100000111100
  521: +111000101100
  522: +000010010011
  523: +001100001101
  524: +111101011011
  525: +001100101010
  526: +001000010001
  527: +011001010010
  528: +111011101011
  529: +010010001101
  530: +000100100011
  531: +111110001111
  532: +110010001111
  533: +010001100010
  534: +101101110001
  535: +101100110011
  536: +110111111011
  537: +011011010100
  538: +011101100101
  539: +111111000100
  540: +101111001001
  541: +010000000100
  542: +011001111110
  543: +110101111100
  544: +111111100001
  545: +111011000100
  546: +100110100001
  547: +101001110000
  548: +001011010010
  549: +011010001000
  550: +110010001110
  551: +000101111001
  552: +010100100110
  553: +011100110100
  554: +000011111000
  555: +100100000111
  556: +110111001000
  557: +111100001110
  558: +001010101100
  559: +010111111011
  560: +111010100100
  561: +101000011101
  562: +110111100110
  563: +111100110100
  564: +000010011010
  565: +000110101111
  566: +001101010001
  567: +010010000111
  568: +011000100001
  569: +110111100100
  570: +010011100101
  571: +011001001011
  572: +101101010100
  573: +010000010001
  574: +001001110001
  575: +100010000110
  576: +111101111011
  577: +011110100101
  578: +000101001000
  579: +111110011100
  580: +000001101110
  581: +111101000001
  582: +100111000100
  583: +011110100011
  584: +110000101011
  585: +000010011111
  586: +000101011001
  587: +101100111001
  588: +011010000111
  589: +000010001011
  590: +010001111110
  591: +000010111110
  592: +101001111110
  593: +000110001101
  594: +001100101001
  595: +000101111011
  596: +110000100110
  597: +110001000011
  598: +000001111100
  599: +010100111010
  600: +011001000001
  601: +110111000010
  602: +110011101010
  603: +001101101000
  604: +100110100011
  605: +000010101010
  606: +101101111010
  607: +111111100111
  608: +010101000000
  609: +011010011110
  610: +011110100100
  611: +100000110000
  612: +011111011100
  613: +011000001110
  614: +000010000010
  615: +101011010010
  616: +010101110000
  617: +110001000000
  618: +011111111100
  619: +101110110010
  620: +111111011001
  621: +100000110110
  622: +111010100111
  623: +000001100101
  624: +101010010111
  625: +010000110110
  626: +001000010111
  627: +101000100000
  628: +100101000011
  629: +111100011011
  630: +010110001101
  631: +101010100110
  632: +101111111101
  633: +100000111001
  634: +011100001000
  635: +110111011000
  636: +100011101101
  637: +101101110011
  638: +000010101100
  639: +000011000001
  640: +011110110110
  641: +001100011110
  642: +010100111111
  643: +011111101011
  644: +000011110100
  645: +001000100111
  646: +010000000101
  647: +111001111000
  648: +111001010001
  649: +001100000001
  650: +110110111010
  651: +101000011010
  652: +010100111001
  653: +000100111100
  654: +110000100011
  655: +100000101011
  656: +001001001110
  657: +101110111101
  658: +110101001110
  659: +101110110100
  660: +001111110101
  661: +100000010101
  662: +110000011010
  663: +111101100011
  664: +101001100100
  665: +100010100001
  666: +011001010000
  667: +111001110000
  668: +101000100111
  669: +100111011110
  670: +000000101111
  671: +101000110000
  672: +110100001111
  673: +001101101010
  674: +010011001101
  675: +000110011101
  676: +101011110000
  677: +100010011110
  678: +101010100011
  679: +000110111011
  680: +000101110110
  681: +001000000011
  682: +011011111010
  683: +101011101111
  684: +000011010101
  685: +010001011101
  686: +001010011100
  687: +011111111000
  688: +111011100111
  689: +010111010001
  690: +010111101001
  691: +101000110100
  692: +000001010000
  693: +010001000101
  694: +000010111101
  695: +010101101111
  696: +010100001010
  697: +100010011101
  698: +011111011001
  699: +111010001001
  700: +000110011011
  701: +000001001000
  702: +100011011111
  703: +110001011000
  704: +001101011000
  705: +000010001101
  706: +100100101111
  707: +110101111011
  708: +000010010110
  709: +001110011010
  710: +100110101000
  711: +100101101100
  712: +110011101101
  713: +000011011011
  714: +110110010110
  715: +001111011110
  716: +100111010100
  717: +011001000000
  718: +011011100001
  719: +101100111000
  720: +010001000011
  721: +010110010110
  722: +101010110100
  723: +101011100100
  724: +110001110101
  725: +110110001100
  726: +000100011011
  727: +110100010000
  728: +101010110001
  729: +110010111000
  730: +110011100101
  731: +010000100100
  732: +101100000011
  733: +111101111101
  734: +000100001100
  735: +000000101011
  736: +101101100000
  737: +000111000110
  738: +010100001000
  739: +011110100001
  740: +101101110010
  741: +110010001101
  742: +011100001001
  743: +001100111111
  744: +000011011010
  745: +001110011110
  746: +000010011000
  747: +111001100010
  748: +110100010001
  749: +100001000100
  750: +000110100000
  751: +111011110111
  752: +001011110000
  753: +000001100010
  754: +001000110001
  755: +110001000010
  756: +010100000011
  757: +010110001111
  758: +100111001001
  759: +011100011011
  760: +011101101111
  761: +110000101100
  762: +101111011111
  763: +101111000110
  764: +111001101011
  765: +011011101111
  766: +010110010101
  767: +100001001100
  768: +011101110011
  769: +000001100001
  770: +001000110111
  771: +011000110001
  772: +111000000111
  773: +000100101001
  774: +101100101101
  775: +000100010110
  776: +110010101001
  777: +100110011100
  778: +000111010011
  779: +110100000100
  780: +101011001110
  781: +010011110001
  782: +010110110100
  783: +111111001000
  784: +010100101111
  785: +101111101000
  786: +011110101000
  787: +001011111000
  788: +111110010111
  789: +101101010000
  790: +111111010100
  791: +100111010011
  792: +011101010011
  793: +100000111110
  794: +100010111111
  795: +011011100010
  796: +111000011101
  797: +010100001101
  798: +010100001011
  799: +001111101001
  800: +011001111100
  801: +111101000111
  802: +000100000000
  803: +110101111001
  804: +111010011111
  805: +010010011101
  806: +001101101011
  807: +110111101111
  808: +001000111001
  809: +100010110000
  810: +000000000101
  811: +101001000001
  812: +001110001101
  813: +110111001101
  814: +111010101110
  815: +101001000110
  816: +000011100011
  817: +010101001101
  818: +000111000001
  819: +001011011101
  820: +111100011101
  821: +111101000110
  822: +101101001011
  823: +101110010101
  824: +110100111000
  825: +000010101101
  826: +000110000110
  827: +100001110001
  828: +011010010000
  829: +110000011111
  830: +101011011110
  831: +000010001111
  832: +100001100101
  833: +111010000001
  834: +010010001011
  835: +011111110100
  836: +000001010010
  837: +110010010111
  838: +011000001000
  839: +011101010100
  840: +111110111101
  841: +111100010100
  842: +001101111000
  843: +011110000001
  844: +111011111001
  845: +111011011011
  846: +001010010011
  847: +011011001110
  848: +101101111111
  849: +001101011001
  850: +010111001000
  851: +101110001011
  852: +111101100111
  853: +001101110010
  854: +100001100110
  855: +010100010100
  856: +110010111011
  857: +110011110110
  858: +010110011101
  859: +101101011001
  860: +001111110011
  861: +100000001100
  862: +110010000000
  863: +001011001100
  864: +001111111100
  865: +110010100101
  866: +100000101100
  867: +011000101101
  868: +000101000010
  869: +100100110001
  870: +010111111110
  871: +101111110100
  872: +100001101011
  873: +111010100001
  874: +100111101010
  875: +100110110000
  876: +000101011000
  877: +100011110011
  878: +110100101101
  879: +010011011011
  880: +011010000001
  881: +010000100001
  882: +001101111110
  883: +110000000010
  884: +011010000000
  885: +100110111001
  886: +101011000011
  887: +100101010101
  888: +001100110111
  889: +001111011001
  890: +110000110100
  891: +111101000000
  892: +110101010100
  893: +011100110111
  894: +001100100000
  895: +111110010110
  896: +101010111010
  897: +110100011010
  898: +110010010010
  899: +101000101101
  900: +111110010010
  901: +100111001000
  902: +110000101110
  903: +100001101110
  904: +100011010110
  905: +000101000001
  906: +000010110111
  907: +000110000100
  908: +011101110101
  909: +111100011010
  910: +000000010100
  911: +111100011000
  912: +110110101011
  913: +001100010101
  914: +000010010010
  915: +010100110001
  916: +001001010110
  917: +100110000011
  918: +110100100001
  919: +000111110010
  920: +011000011011
  921: +111101001000
  922: +001101110101
  923: +001101110110
  924: +010101101010
  925: +110111000011
  926: +011110000010
  927: +011010011011
  928: +111100110001
  929: +010001001000
  930: +000101100110
  931: +010001110111
  932: +010000101000
  933: +000000100000
  934: +100011001011
  935: +100001111110
  936: +100011111101
  937: +101101001110
  938: +101110110011
  939: +100000011111
  940: +001101010111
  941: +111101100000
  942: +011010001111
  943: +101001010010
  944: +100010100000
  945: +011000100111
  946: +101100100000
  947: +011011000011
  948: +001101001011
  949: +001010001011
  950: +110100000001
  951: +111110001000
  952: +101000010101
  953: +100011000010
  954: +010110101000
  955: +011101011111
  956: +000110001000
  957: +101100000111
  958: +110100101001
  959: +101001101001
  960: +010111000011
  961: +011101000001
  962: +101011001000
  963: +110101001101
  964: +010010100110
  965: +111001110011
  966: +010111010010
  967: +010011101100
  968: +001110111100
  969: +010111011110
  970: +000010001100
  971: +111000001001
  972: +001100101110
  973: +111001100011
  974: +010000011001
  975: +111010111111
  976: +010011111111
  977: +011100100110
  978: +001001101111
  979: +001000111110
  980: +010101111000
  981: +011011001011
  982: +101110001100
  983: +010100010010
  984: +000001011011
  985: +000001100100
  986: +000000010011
  987: +000001110011
  988: +010101001000
  989: +110110100001
  990: +001101101101
  991: +011010001110
  992: +101011100110
  993: +110001100101
  994: +110100100110
  995: +101010110000
  996: +110100110101
  997: +011101000100
  998: +101110001010
  999: +001100110101
 1000: +000100011110
 1001: +101110111001
 1002: +011111101010
 1003: +010110001010
 1004: +110111110010
 1005: +001000101110
 1006: +100011001100
 1007: +010011010101
 1008: +100101001001
 1009: +111011001110
 1010: +101100000100
 1011: +000010111100
 1012: +111000101111
 1013: +010001001100
 1014: +010011110100
 1015: +010010110000
 1016: +001111101110
 1017: +111110110111
 1018: +101010000010
 1019: +010001101101
 1020: +111001000000
 1021: +100011001010
 1022: +100000111111
 1023: +110000001101
 1024: +000000111110
 1025: +010011100111
 1026: +010110110010
 1027: +010110010000
 1028: +011010001001
 1029: +101000110101
 1030: +111110001010
 1031: +100101001010
 1032: +011000001001
 1033: +011100010111
 1034: +111010111000
 1035: +011011001100
 1036: +001010000100
 1037: +011100001110
 1038: +001001110010
 1039: +110001000110
 1040: +100100010111
 1041: +101110001101
 1042: +000100001001
 1043: +001001011111
 1044: +100111100100
 1045: +100001100011
 1046: +000011011110
 1047: +101011111110
 1048: +111000011000
 1049: +000100001010
 1050: +011111010111
 1051: +011001010100
 1052: +011101110111
 1053: +001100000110
 1054: +100011011101
 1055: +011010111111
 1056: +010110100111
 1057: +011000111001
 1058: +000100111010
 1059: +011001001110
 1060: +111010001000
 1061: +110011000101
 1062: +110001101010
 1063: +001101100111
 1064: +101011101010
 1065: +000001001010
 1066: +110110010100
 1067: +100000000001
 1068: +000011011101
 1069: +010011101110
 1070: +101001100110
 1071: +111110011001
 1072: +110010100000
 1073: +100011000100
 1074: +111111000001
 1075: +010000100011
 1076: +000100010010
 1077: +010111000010
 1078: +011111101001
 1079: +101101100100
 1080: +011011000101
 1081: +111110010000
 1082: +001000000000
 1083: +011000001011
 1084: +111111110110
 1085: +011010110110
 1086: +000001111110
 1087: +011101001000
 1088: +110101010000
 1089: +110001010000
 1090: +101000100001
 1091: +111100001001
 1092: +000000000110
 1093: +100000011101
 1094: +101001011011
 1095: +000001001100
 1096: +110000010110
 1097: +110000001011
 1098: +000101101101
 1099: +001011000111
 1100: +100110011111
 1101: +011111011101
 1102: +110010101111
 1103: +000000000001
 1104: +000101110001
 1105: +100011000001
 1106: +100101010011
 1107: +100011010111
 1108: +001101100000
 1109: +001100111110
 1110: +100101000111
 1111: +100011110111
 1112: +100000110011
 1113: +111010000101
 1114: +010101110110
 1115: +101010001011
 1116: +011001100100
 1117: +111101110011
 1118: +110011000001
 1119: +111011101100
 1120: +110010011010
 1121: +111100010011
 1122: +001011011001
 1123: +000000000000
 1124: +001000001101
 1125: +001110010001
 1126: +000011010100
 1127: +100001010101
 1128: +101010001000
 1129: +110100011011
 1130: +011100111000
 1131: +111111111001
 1132: +100101001110
 1133: +100011100011
 1134: +101000101000
 1135: +010101110101
 1136: +011100011100

Generated by git2html.