aboutsummaryrefslogtreecommitdiff
path: root/Semestr 4/aisd
diff options
context:
space:
mode:
Diffstat (limited to 'Semestr 4/aisd')
-rw-r--r--Semestr 4/aisd/lista0/L0Z8.md (renamed from Semestr 4/aisd/Lista 0/L0Z8.md)0
-rw-r--r--Semestr 4/aisd/lista0/Rozw L0.pdf (renamed from Semestr 4/aisd/Lista 0/Rozw L0.pdf)bin1983735 -> 1983735 bytes
-rw-r--r--Semestr 4/aisd/lista0/lista0.pdf (renamed from Semestr 4/aisd/Lista 0/lista0.pdf)bin83161 -> 83161 bytes
-rw-r--r--Semestr 4/aisd/lista1/Lista 1.pdf (renamed from Semestr 4/aisd/Lista 1/Lista 1.pdf)bin810791 -> 810791 bytes
-rw-r--r--Semestr 4/aisd/lista1/lista1.pdf (renamed from Semestr 4/aisd/Lista 1/lista1.pdf)bin103432 -> 103432 bytes
-rw-r--r--Semestr 4/aisd/lista2/Lista 2.pdf (renamed from Semestr 4/aisd/Lista 2/Lista 2.pdf)bin2301798 -> 2301798 bytes
-rw-r--r--Semestr 4/aisd/lista2/lista2.pdf (renamed from Semestr 4/aisd/Lista 2/lista2.pdf)bin128638 -> 128638 bytes
-rw-r--r--Semestr 4/aisd/lista3/huff.pdfbin0 -> 62844 bytes
-rw-r--r--Semestr 4/aisd/lista3/huffman.pdfbin0 -> 73477 bytes
-rw-r--r--Semestr 4/aisd/lista3/lista3.pdfbin0 -> 179499 bytes
-rw-r--r--Semestr 4/aisd/pracownia1/pracownia1.pdf (renamed from Semestr 4/aisd/Pracownia 1/pracownia1.pdf)bin55846 -> 55846 bytes
-rw-r--r--Semestr 4/aisd/pracownia1/rozw.cpp (renamed from Semestr 4/aisd/Pracownia 1/rozw.cpp)0
-rw-r--r--Semestr 4/aisd/pracownia1/rozw2.cpp (renamed from Semestr 4/aisd/Pracownia 1/rozw2.cpp)0
-rw-r--r--Semestr 4/aisd/pracownia2/rozw.cpp (renamed from Semestr 4/aisd/Pracownia 2/rozw.cpp)0
-rw-r--r--Semestr 4/aisd/pracownia2/rozw2.cpp (renamed from Semestr 4/aisd/Pracownia 2/rozw2.cpp)0
-rw-r--r--Semestr 4/aisd/pracownia2/rozw3.cpp (renamed from Semestr 4/aisd/Pracownia 2/rozw3.cpp)0
-rw-r--r--Semestr 4/aisd/pracownia2/rozw4.cpp51
-rw-r--r--Semestr 4/aisd/pracownia2/show_problem.pdf (renamed from Semestr 4/aisd/Pracownia 2/show_problem.pdf)bin53598 -> 53598 bytes
-rw-r--r--Semestr 4/aisd/pracownia3/wa.outr1025
19 files changed, 1076 insertions, 0 deletions
diff --git a/Semestr 4/aisd/Lista 0/L0Z8.md b/Semestr 4/aisd/lista0/L0Z8.md
index d9c8604..d9c8604 100644
--- a/Semestr 4/aisd/Lista 0/L0Z8.md
+++ b/Semestr 4/aisd/lista0/L0Z8.md
diff --git a/Semestr 4/aisd/Lista 0/Rozw L0.pdf b/Semestr 4/aisd/lista0/Rozw L0.pdf
index d39c13b..d39c13b 100644
--- a/Semestr 4/aisd/Lista 0/Rozw L0.pdf
+++ b/Semestr 4/aisd/lista0/Rozw L0.pdf
Binary files differ
diff --git a/Semestr 4/aisd/Lista 0/lista0.pdf b/Semestr 4/aisd/lista0/lista0.pdf
index 31b9daa..31b9daa 100644
--- a/Semestr 4/aisd/Lista 0/lista0.pdf
+++ b/Semestr 4/aisd/lista0/lista0.pdf
Binary files differ
diff --git a/Semestr 4/aisd/Lista 1/Lista 1.pdf b/Semestr 4/aisd/lista1/Lista 1.pdf
index 7e2f5ae..7e2f5ae 100644
--- a/Semestr 4/aisd/Lista 1/Lista 1.pdf
+++ b/Semestr 4/aisd/lista1/Lista 1.pdf
Binary files differ
diff --git a/Semestr 4/aisd/Lista 1/lista1.pdf b/Semestr 4/aisd/lista1/lista1.pdf
index a7dc065..a7dc065 100644
--- a/Semestr 4/aisd/Lista 1/lista1.pdf
+++ b/Semestr 4/aisd/lista1/lista1.pdf
Binary files differ
diff --git a/Semestr 4/aisd/Lista 2/Lista 2.pdf b/Semestr 4/aisd/lista2/Lista 2.pdf
index ccf83b7..ccf83b7 100644
--- a/Semestr 4/aisd/Lista 2/Lista 2.pdf
+++ b/Semestr 4/aisd/lista2/Lista 2.pdf
Binary files differ
diff --git a/Semestr 4/aisd/Lista 2/lista2.pdf b/Semestr 4/aisd/lista2/lista2.pdf
index 2d8937f..2d8937f 100644
--- a/Semestr 4/aisd/Lista 2/lista2.pdf
+++ b/Semestr 4/aisd/lista2/lista2.pdf
Binary files differ
diff --git a/Semestr 4/aisd/lista3/huff.pdf b/Semestr 4/aisd/lista3/huff.pdf
new file mode 100644
index 0000000..bf2cfec
--- /dev/null
+++ b/Semestr 4/aisd/lista3/huff.pdf
Binary files differ
diff --git a/Semestr 4/aisd/lista3/huffman.pdf b/Semestr 4/aisd/lista3/huffman.pdf
new file mode 100644
index 0000000..1881a27
--- /dev/null
+++ b/Semestr 4/aisd/lista3/huffman.pdf
Binary files differ
diff --git a/Semestr 4/aisd/lista3/lista3.pdf b/Semestr 4/aisd/lista3/lista3.pdf
new file mode 100644
index 0000000..74514b8
--- /dev/null
+++ b/Semestr 4/aisd/lista3/lista3.pdf
Binary files differ
diff --git a/Semestr 4/aisd/Pracownia 1/pracownia1.pdf b/Semestr 4/aisd/pracownia1/pracownia1.pdf
index 2b99ba4..2b99ba4 100644
--- a/Semestr 4/aisd/Pracownia 1/pracownia1.pdf
+++ b/Semestr 4/aisd/pracownia1/pracownia1.pdf
Binary files differ
diff --git a/Semestr 4/aisd/Pracownia 1/rozw.cpp b/Semestr 4/aisd/pracownia1/rozw.cpp
index acbd711..acbd711 100644
--- a/Semestr 4/aisd/Pracownia 1/rozw.cpp
+++ b/Semestr 4/aisd/pracownia1/rozw.cpp
diff --git a/Semestr 4/aisd/Pracownia 1/rozw2.cpp b/Semestr 4/aisd/pracownia1/rozw2.cpp
index 35fd37e..35fd37e 100644
--- a/Semestr 4/aisd/Pracownia 1/rozw2.cpp
+++ b/Semestr 4/aisd/pracownia1/rozw2.cpp
diff --git a/Semestr 4/aisd/Pracownia 2/rozw.cpp b/Semestr 4/aisd/pracownia2/rozw.cpp
index dd0d700..dd0d700 100644
--- a/Semestr 4/aisd/Pracownia 2/rozw.cpp
+++ b/Semestr 4/aisd/pracownia2/rozw.cpp
diff --git a/Semestr 4/aisd/Pracownia 2/rozw2.cpp b/Semestr 4/aisd/pracownia2/rozw2.cpp
index fa0b2d6..fa0b2d6 100644
--- a/Semestr 4/aisd/Pracownia 2/rozw2.cpp
+++ b/Semestr 4/aisd/pracownia2/rozw2.cpp
diff --git a/Semestr 4/aisd/Pracownia 2/rozw3.cpp b/Semestr 4/aisd/pracownia2/rozw3.cpp
index 8e3dd2a..8e3dd2a 100644
--- a/Semestr 4/aisd/Pracownia 2/rozw3.cpp
+++ b/Semestr 4/aisd/pracownia2/rozw3.cpp
diff --git a/Semestr 4/aisd/pracownia2/rozw4.cpp b/Semestr 4/aisd/pracownia2/rozw4.cpp
new file mode 100644
index 0000000..73ff79a
--- /dev/null
+++ b/Semestr 4/aisd/pracownia2/rozw4.cpp
@@ -0,0 +1,51 @@
+#include<bits/stdc++.h>
+using namespace std;
+
+const int MAX_SUM = 1e6, MAXN = 2004;
+int n;
+int dp[2][MAX_SUM + 10], H[MAXN];
+
+int main() {
+ scanf("%d", &n);
+ for (int i = 0; i < n; ++i) {
+ scanf("%d", &H[i]);
+ }
+
+ sort(H, H + n);
+
+ int sum = 0, K = 0;
+ for (int i = 0; i < n; ++i) {
+ int h = H[i];
+ for (int i = 0; i <= min(sum, MAX_SUM); i++)
+ dp[K^1][i] = dp[K][i];
+
+ for (int i = 0; i <= min(sum, MAX_SUM); i++) {
+ if (i != 0 && dp[K][i] == 0) continue;
+
+ int left = abs(i - h), aux = i-h >= 0 ? 0 : h-i;
+ if (left <= MAX_SUM) {
+ dp[K^1][left] = max(dp[K^1][left], dp[K][i] + aux);
+ }
+ int right = i + h;
+ if (right <= MAX_SUM) {
+ dp[K^1][right] = max(dp[K^1][right], dp[K][i] + h);
+ }
+ }
+
+ K ^= 1;
+ sum += h;
+ }
+ if (dp[K][0] != 0) {
+ printf("TAK\n%d\n", dp[K][0]);
+ }
+ else {
+ int res = 0;
+ for (int i = 1; i <= MAX_SUM; i++) {
+ if (dp[K][i] != i && dp[K][i]) {
+ res = i;
+ break;
+ }
+ }
+ printf("NIE\n%d\n", res);
+ }
+} \ No newline at end of file
diff --git a/Semestr 4/aisd/Pracownia 2/show_problem.pdf b/Semestr 4/aisd/pracownia2/show_problem.pdf
index 4ab0312..4ab0312 100644
--- a/Semestr 4/aisd/Pracownia 2/show_problem.pdf
+++ b/Semestr 4/aisd/pracownia2/show_problem.pdf
Binary files differ
diff --git a/Semestr 4/aisd/pracownia3/wa.outr b/Semestr 4/aisd/pracownia3/wa.outr
new file mode 100644
index 0000000..81a8bb1
--- /dev/null
+++ b/Semestr 4/aisd/pracownia3/wa.outr
@@ -0,0 +1,1025 @@
+0: 613
+1: 745
+2: 729
+3: 745
+4: 881
+5: 881
+6: 881
+7: 881
+8: 849
+9: 865
+10: 849
+11: 865
+12: 881
+13: 881
+14: 881
+15: 881
+16: 1025
+17: 1025
+18: 1025
+19: 1025
+20: 1025
+21: 1025
+22: 1025
+23: 1025
+24: 1025
+25: 1025
+26: 1025
+27: 1025
+28: 1025
+29: 1025
+30: 1025
+31: 1025
+32: 977
+33: 993
+34: 977
+35: 993
+36: 1009
+37: 1009
+38: 1009
+39: 1009
+40: 977
+41: 993
+42: 977
+43: 993
+44: 1009
+45: 1009
+46: 1009
+47: 1009
+48: 1025
+49: 1025
+50: 1025
+51: 1025
+52: 1025
+53: 1025
+54: 1025
+55: 1025
+56: 1025
+57: 1025
+58: 1025
+59: 1025
+60: 1025
+61: 1025
+62: 1025
+63: 1025
+64: 881
+65: 1025
+66: 1009
+67: 1025
+68: 1025
+69: 1025
+70: 1025
+71: 1025
+72: 1009
+73: 1025
+74: 1009
+75: 1025
+76: 1025
+77: 1025
+78: 1025
+79: 1025
+80: 1025
+81: 1025
+82: 1025
+83: 1025
+84: 1025
+85: 1025
+86: 1025
+87: 1025
+88: 1025
+89: 1025
+90: 1025
+91: 1025
+92: 1025
+93: 1025
+94: 1025
+95: 1025
+96: 1009
+97: 1025
+98: 1009
+99: 1025
+100: 1025
+101: 1025
+102: 1025
+103: 1025
+104: 1009
+105: 1025
+106: 1009
+107: 1025
+108: 1025
+109: 1025
+110: 1025
+111: 1025
+112: 1025
+113: 1025
+114: 1025
+115: 1025
+116: 1025
+117: 1025
+118: 1025
+119: 1025
+120: 1025
+121: 1025
+122: 1025
+123: 1025
+124: 1025
+125: 1025
+126: 1025
+127: 1025
+128: 861
+129: 993
+130: 977
+131: 993
+132: 1009
+133: 1009
+134: 1009
+135: 1009
+136: 977
+137: 993
+138: 977
+139: 993
+140: 1009
+141: 1009
+142: 1009
+143: 1009
+144: 1025
+145: 1025
+146: 1025
+147: 1025
+148: 1025
+149: 1025
+150: 1025
+151: 1025
+152: 1025
+153: 1025
+154: 1025
+155: 1025
+156: 1025
+157: 1025
+158: 1025
+159: 1025
+160: 977
+161: 993
+162: 977
+163: 993
+164: 1009
+165: 1009
+166: 1009
+167: 1009
+168: 977
+169: 993
+170: 977
+171: 993
+172: 1009
+173: 1009
+174: 1009
+175: 1009
+176: 1025
+177: 1025
+178: 1025
+179: 1025
+180: 1025
+181: 1025
+182: 1025
+183: 1025
+184: 1025
+185: 1025
+186: 1025
+187: 1025
+188: 1025
+189: 1025
+190: 1025
+191: 1025
+192: 881
+193: 1025
+194: 1009
+195: 1025
+196: 1025
+197: 1025
+198: 1025
+199: 1025
+200: 1009
+201: 1025
+202: 1009
+203: 1025
+204: 1025
+205: 1025
+206: 1025
+207: 1025
+208: 1025
+209: 1025
+210: 1025
+211: 1025
+212: 1025
+213: 1025
+214: 1025
+215: 1025
+216: 1025
+217: 1025
+218: 1025
+219: 1025
+220: 1025
+221: 1025
+222: 1025
+223: 1025
+224: 1009
+225: 1025
+226: 1009
+227: 1025
+228: 1025
+229: 1025
+230: 1025
+231: 1025
+232: 1009
+233: 1025
+234: 1009
+235: 1025
+236: 1025
+237: 1025
+238: 1025
+239: 1025
+240: 1025
+241: 1025
+242: 1025
+243: 1025
+244: 1025
+245: 1025
+246: 1025
+247: 1025
+248: 1025
+249: 1025
+250: 1025
+251: 1025
+252: 1025
+253: 1025
+254: 1025
+255: 1025
+256: 745
+257: 881
+258: 865
+259: 881
+260: 1025
+261: 1025
+262: 1025
+263: 1025
+264: 993
+265: 1009
+266: 993
+267: 1009
+268: 1025
+269: 1025
+270: 1025
+271: 1025
+272: 1025
+273: 1025
+274: 1025
+275: 1025
+276: 1025
+277: 1025
+278: 1025
+279: 1025
+280: 1025
+281: 1025
+282: 1025
+283: 1025
+284: 1025
+285: 1025
+286: 1025
+287: 1025
+288: 993
+289: 1009
+290: 993
+291: 1009
+292: 1025
+293: 1025
+294: 1025
+295: 1025
+296: 993
+297: 1009
+298: 993
+299: 1009
+300: 1025
+301: 1025
+302: 1025
+303: 1025
+304: 1025
+305: 1025
+306: 1025
+307: 1025
+308: 1025
+309: 1025
+310: 1025
+311: 1025
+312: 1025
+313: 1025
+314: 1025
+315: 1025
+316: 1025
+317: 1025
+318: 1025
+319: 1025
+320: 881
+321: 1025
+322: 1009
+323: 1025
+324: 1025
+325: 1025
+326: 1025
+327: 1025
+328: 1009
+329: 1025
+330: 1009
+331: 1025
+332: 1025
+333: 1025
+334: 1025
+335: 1025
+336: 1025
+337: 1025
+338: 1025
+339: 1025
+340: 1025
+341: 1025
+342: 1025
+343: 1025
+344: 1025
+345: 1025
+346: 1025
+347: 1025
+348: 1025
+349: 1025
+350: 1025
+351: 1025
+352: 1009
+353: 1025
+354: 1009
+355: 1025
+356: 1025
+357: 1025
+358: 1025
+359: 1025
+360: 1009
+361: 1025
+362: 1009
+363: 1025
+364: 1025
+365: 1025
+366: 1025
+367: 1025
+368: 1025
+369: 1025
+370: 1025
+371: 1025
+372: 1025
+373: 1025
+374: 1025
+375: 1025
+376: 1025
+377: 1025
+378: 1025
+379: 1025
+380: 1025
+381: 1025
+382: 1025
+383: 1025
+384: 873
+385: 1009
+386: 993
+387: 1009
+388: 1025
+389: 1025
+390: 1025
+391: 1025
+392: 993
+393: 1009
+394: 993
+395: 1009
+396: 1025
+397: 1025
+398: 1025
+399: 1025
+400: 1025
+401: 1025
+402: 1025
+403: 1025
+404: 1025
+405: 1025
+406: 1025
+407: 1025
+408: 1025
+409: 1025
+410: 1025
+411: 1025
+412: 1025
+413: 1025
+414: 1025
+415: 1025
+416: 993
+417: 1009
+418: 993
+419: 1009
+420: 1025
+421: 1025
+422: 1025
+423: 1025
+424: 993
+425: 1009
+426: 993
+427: 1009
+428: 1025
+429: 1025
+430: 1025
+431: 1025
+432: 1025
+433: 1025
+434: 1025
+435: 1025
+436: 1025
+437: 1025
+438: 1025
+439: 1025
+440: 1025
+441: 1025
+442: 1025
+443: 1025
+444: 1025
+445: 1025
+446: 1025
+447: 1025
+448: 881
+449: 1025
+450: 1009
+451: 1025
+452: 1025
+453: 1025
+454: 1025
+455: 1025
+456: 1009
+457: 1025
+458: 1009
+459: 1025
+460: 1025
+461: 1025
+462: 1025
+463: 1025
+464: 1025
+465: 1025
+466: 1025
+467: 1025
+468: 1025
+469: 1025
+470: 1025
+471: 1025
+472: 1025
+473: 1025
+474: 1025
+475: 1025
+476: 1025
+477: 1025
+478: 1025
+479: 1025
+480: 1009
+481: 1025
+482: 1009
+483: 1025
+484: 1025
+485: 1025
+486: 1025
+487: 1025
+488: 1009
+489: 1025
+490: 1009
+491: 1025
+492: 1025
+493: 1025
+494: 1025
+495: 1025
+496: 1025
+497: 1025
+498: 1025
+499: 1025
+500: 1025
+501: 1025
+502: 1025
+503: 1025
+504: 1025
+505: 1025
+506: 1025
+507: 1025
+508: 1025
+509: 1025
+510: 1025
+511: 1025
+512: 741
+513: 873
+514: 857
+515: 873
+516: 1009
+517: 1009
+518: 1009
+519: 1009
+520: 977
+521: 993
+522: 977
+523: 993
+524: 1009
+525: 1009
+526: 1009
+527: 1009
+528: 1025
+529: 1025
+530: 1025
+531: 1025
+532: 1025
+533: 1025
+534: 1025
+535: 1025
+536: 1025
+537: 1025
+538: 1025
+539: 1025
+540: 1025
+541: 1025
+542: 1025
+543: 1025
+544: 977
+545: 993
+546: 977
+547: 993
+548: 1009
+549: 1009
+550: 1009
+551: 1009
+552: 977
+553: 993
+554: 977
+555: 993
+556: 1009
+557: 1009
+558: 1009
+559: 1009
+560: 1025
+561: 1025
+562: 1025
+563: 1025
+564: 1025
+565: 1025
+566: 1025
+567: 1025
+568: 1025
+569: 1025
+570: 1025
+571: 1025
+572: 1025
+573: 1025
+574: 1025
+575: 1025
+576: 881
+577: 1025
+578: 1009
+579: 1025
+580: 1025
+581: 1025
+582: 1025
+583: 1025
+584: 1009
+585: 1025
+586: 1009
+587: 1025
+588: 1025
+589: 1025
+590: 1025
+591: 1025
+592: 1025
+593: 1025
+594: 1025
+595: 1025
+596: 1025
+597: 1025
+598: 1025
+599: 1025
+600: 1025
+601: 1025
+602: 1025
+603: 1025
+604: 1025
+605: 1025
+606: 1025
+607: 1025
+608: 1009
+609: 1025
+610: 1009
+611: 1025
+612: 1025
+613: 1025
+614: 1025
+615: 1025
+616: 1009
+617: 1025
+618: 1009
+619: 1025
+620: 1025
+621: 1025
+622: 1025
+623: 1025
+624: 1025
+625: 1025
+626: 1025
+627: 1025
+628: 1025
+629: 1025
+630: 1025
+631: 1025
+632: 1025
+633: 1025
+634: 1025
+635: 1025
+636: 1025
+637: 1025
+638: 1025
+639: 1025
+640: 861
+641: 993
+642: 977
+643: 993
+644: 1009
+645: 1009
+646: 1009
+647: 1009
+648: 977
+649: 993
+650: 977
+651: 993
+652: 1009
+653: 1009
+654: 1009
+655: 1009
+656: 1025
+657: 1025
+658: 1025
+659: 1025
+660: 1025
+661: 1025
+662: 1025
+663: 1025
+664: 1025
+665: 1025
+666: 1025
+667: 1025
+668: 1025
+669: 1025
+670: 1025
+671: 1025
+672: 977
+673: 993
+674: 977
+675: 993
+676: 1009
+677: 1009
+678: 1009
+679: 1009
+680: 977
+681: 993
+682: 977
+683: 993
+684: 1009
+685: 1009
+686: 1009
+687: 1009
+688: 1025
+689: 1025
+690: 1025
+691: 1025
+692: 1025
+693: 1025
+694: 1025
+695: 1025
+696: 1025
+697: 1025
+698: 1025
+699: 1025
+700: 1025
+701: 1025
+702: 1025
+703: 1025
+704: 881
+705: 1025
+706: 1009
+707: 1025
+708: 1025
+709: 1025
+710: 1025
+711: 1025
+712: 1009
+713: 1025
+714: 1009
+715: 1025
+716: 1025
+717: 1025
+718: 1025
+719: 1025
+720: 1025
+721: 1025
+722: 1025
+723: 1025
+724: 1025
+725: 1025
+726: 1025
+727: 1025
+728: 1025
+729: 1025
+730: 1025
+731: 1025
+732: 1025
+733: 1025
+734: 1025
+735: 1025
+736: 1009
+737: 1025
+738: 1009
+739: 1025
+740: 1025
+741: 1025
+742: 1025
+743: 1025
+744: 1009
+745: 1025
+746: 1009
+747: 1025
+748: 1025
+749: 1025
+750: 1025
+751: 1025
+752: 1025
+753: 1025
+754: 1025
+755: 1025
+756: 1025
+757: 1025
+758: 1025
+759: 1025
+760: 1025
+761: 1025
+762: 1025
+763: 1025
+764: 1025
+765: 1025
+766: 1025
+767: 1025
+768: 745
+769: 881
+770: 865
+771: 881
+772: 1025
+773: 1025
+774: 1025
+775: 1025
+776: 993
+777: 1009
+778: 993
+779: 1009
+780: 1025
+781: 1025
+782: 1025
+783: 1025
+784: 1025
+785: 1025
+786: 1025
+787: 1025
+788: 1025
+789: 1025
+790: 1025
+791: 1025
+792: 1025
+793: 1025
+794: 1025
+795: 1025
+796: 1025
+797: 1025
+798: 1025
+799: 1025
+800: 993
+801: 1009
+802: 993
+803: 1009
+804: 1025
+805: 1025
+806: 1025
+807: 1025
+808: 993
+809: 1009
+810: 993
+811: 1009
+812: 1025
+813: 1025
+814: 1025
+815: 1025
+816: 1025
+817: 1025
+818: 1025
+819: 1025
+820: 1025
+821: 1025
+822: 1025
+823: 1025
+824: 1025
+825: 1025
+826: 1025
+827: 1025
+828: 1025
+829: 1025
+830: 1025
+831: 1025
+832: 881
+833: 1025
+834: 1009
+835: 1025
+836: 1025
+837: 1025
+838: 1025
+839: 1025
+840: 1009
+841: 1025
+842: 1009
+843: 1025
+844: 1025
+845: 1025
+846: 1025
+847: 1025
+848: 1025
+849: 1025
+850: 1025
+851: 1025
+852: 1025
+853: 1025
+854: 1025
+855: 1025
+856: 1025
+857: 1025
+858: 1025
+859: 1025
+860: 1025
+861: 1025
+862: 1025
+863: 1025
+864: 1009
+865: 1025
+866: 1009
+867: 1025
+868: 1025
+869: 1025
+870: 1025
+871: 1025
+872: 1009
+873: 1025
+874: 1009
+875: 1025
+876: 1025
+877: 1025
+878: 1025
+879: 1025
+880: 1025
+881: 1025
+882: 1025
+883: 1025
+884: 1025
+885: 1025
+886: 1025
+887: 1025
+888: 1025
+889: 1025
+890: 1025
+891: 1025
+892: 1025
+893: 1025
+894: 1025
+895: 1025
+896: 873
+897: 1009
+898: 993
+899: 1009
+900: 1025
+901: 1025
+902: 1025
+903: 1025
+904: 993
+905: 1009
+906: 993
+907: 1009
+908: 1025
+909: 1025
+910: 1025
+911: 1025
+912: 1025
+913: 1025
+914: 1025
+915: 1025
+916: 1025
+917: 1025
+918: 1025
+919: 1025
+920: 1025
+921: 1025
+922: 1025
+923: 1025
+924: 1025
+925: 1025
+926: 1025
+927: 1025
+928: 993
+929: 1009
+930: 993
+931: 1009
+932: 1025
+933: 1025
+934: 1025
+935: 1025
+936: 993
+937: 1009
+938: 993
+939: 1009
+940: 1025
+941: 1025
+942: 1025
+943: 1025
+944: 1025
+945: 1025
+946: 1025
+947: 1025
+948: 1025
+949: 1025
+950: 1025
+951: 1025
+952: 1025
+953: 1025
+954: 1025
+955: 1025
+956: 1025
+957: 1025
+958: 1025
+959: 1025
+960: 881
+961: 1025
+962: 1009
+963: 1025
+964: 1025
+965: 1025
+966: 1025
+967: 1025
+968: 1009
+969: 1025
+970: 1009
+971: 1025
+972: 1025
+973: 1025
+974: 1025
+975: 1025
+976: 1025
+977: 1025
+978: 1025
+979: 1025
+980: 1025
+981: 1025
+982: 1025
+983: 1025
+984: 1025
+985: 1025
+986: 1025
+987: 1025
+988: 1025
+989: 1025
+990: 1025
+991: 1025
+992: 1009
+993: 1025
+994: 1009
+995: 1025
+996: 1025
+997: 1025
+998: 1025
+999: 1025
+1000: 1009
+1001: 1025
+1002: 1009
+1003: 1025
+1004: 1025
+1005: 1025
+1006: 1025
+1007: 1025
+1008: 1025
+1009: 1025
+1010: 1025
+1011: 1025
+1012: 1025
+1013: 1025
+1014: 1025
+1015: 1025
+1016: 1025
+1017: 1025
+1018: 1025
+1019: 1025
+1020: 1025
+1021: 1025
+1022: 1025
+1023: 1025
+37456