Advertisement
Guest User

Untitled

a guest
Dec 2nd, 2018
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. console.time()
  2. let raw = `lutrogkbetprmshdyfiqvzixaw
  3. lujnmgkbetprmshdyicqvzivaw
  4. lujnogkbetprmshdyfkqvtpxaw
  5. lujnqgkbetpmmshdywcqvzixaw
  6. lujnogtaetprmshdyffqvzixaw
  7. lujnogkbetprmuldyfcqvqixaw
  8. luunogkbetprlshdyfcqrzixaw
  9. lujnogkketprmshdyhcqvtixaw
  10. lyjnogzbetprmsbdyfcqvzixaw
  11. eujnogkbetprmshdyfrqvzixmw
  12. lujnogcbetprmshdyfvqvziqaw
  13. lujnogkbempruahdyfcqvzixaw
  14. lujlogkbetprmlhdyfyqvzixaw
  15. lrjnogkbetyrmshdofcqvzixaw
  16. lujnogkbetprmlheyfaqvzixaw
  17. lujoohkbetprmshdyfccvzixaw
  18. lijkogkietprmshdyfcqvzixaw
  19. lujnoukbetprmshdyfcqvzmxkw
  20. lujnogkbetprpshdyfcivzixiw
  21. lfjiogkbetprmshdyfwqvzixaw
  22. lujnogkbctprmshdffcqvzicaw
  23. lujnogkbetprashdckcqvzixaw
  24. lwjnogkbetprjshdyfcqvziyaw
  25. lujoogkbetpsmshdyfcnvzixaw
  26. lujnrgkjetprmsvdyfcqvzixaw
  27. luinogkcetprmshdyfccvzixaw
  28. lujnlgkbetprmshdyfcqvziirw
  29. rujnogkbetprmshdyfcqvzmxag
  30. luqnogkbetkrmshdhfcqvzixaw
  31. lujnogkbhxprmshdyfcbvzixaw
  32. lpjnogkbeyprmshdymcqvzixaw
  33. lujnogkbetdymshvyfcqvzixaw
  34. lujnoakbetprmshdlfcnvzixaw
  35. lujnogabetpumsydyfcovzixaw
  36. lpjnogkbetprmshdyfcqvzixzi
  37. gujnogkbevprdshdyfcqvzixaw
  38. lzjnogkbetprmsddyscqvzixaw
  39. lujnolkbmtprmshdyfuqvzixaw
  40. lujnogkbexpenshdyfcqvzixaw
  41. lujnogknetprmshdrfcqvzpxaw
  42. lujnogkbetpfmshayfcqvzwxaw
  43. lujnogkbetmrmshdyfcfvzilaw
  44. lujnogkqetpqdshdyfcqvzixaw
  45. xujnvgkbetprmnhdyfcqvzixaw
  46. lujnogkbetprsshdyfcqviixai
  47. rujnogkbeiprmshdyfcvvzixaw
  48. vujnogkeetprmshdyfcsvzixaw
  49. lujnogkbetcrmshdypcqxzixaw
  50. vuunogkbdtprmshdyfcqvzixaw
  51. nujnogkbetprmsvyyfcqvzixaw
  52. lujnogkbhtprmshdtfpqvzixaw
  53. lujnogkbetzrmphdyfcqvzixan
  54. lujnogkbetprmshdytcqvzixiu
  55. luanogkbeturmshdyfcqviixaw
  56. lujnogkbefprmshdyfcqvhixaf
  57. luvnogkbetprmsfdyfcqvzixhw
  58. lujnockbetprfshdyfcqvzixdw
  59. luenogkbetprmshdyfacvzixaw
  60. lfjnogkbetprmsldyfcxvzixaw
  61. xujnogkbetxrmshdufcqvzixaw
  62. lsjnogkbdtprmswdyfcqvzixaw
  63. lujnogkbetprishdyfcpvgixaw
  64. fujnogkbethrmshdyhcqvzixaw
  65. lujnogabetprmsydyfcovzixaw
  66. lvjnogkbetpvmshzyfcqvzixaw
  67. lujnogkbeturmshdufcqvcixaw
  68. lujnogkietprmshdyzyqvzixaw
  69. lujnogkaatprmshdyfwqvzixaw
  70. lujnogkbetpemshoyfcfvzixaw
  71. lujiogkbetpumshiyfcqvzixaw
  72. lujnvgkbetirmphdyfcqvzixaw
  73. lujnkgkbetprmhhdyfcqvzixmw
  74. lrjnorkbetprmphdyfcqvzixaw
  75. cujnogkietprmshdjfcqvzixaw
  76. lpjnogkbetpryshdyfcqvzixbw
  77. lujrogkbetprmchdzfcqvzixaw
  78. cujnlgkbetprmmhdyfcqvzixaw
  79. rujnogkbotprmshdyfcqczixaw
  80. lucnogknetprmshdyfcqvzixhw
  81. lujnogkbaturmdhdyfcqvzixaw
  82. lujnonkbetpcmshcyfcqvzixaw
  83. lujnogkbelprmshwyfcqvzihaw
  84. luanogkbetprmshdyhcqvzilaw
  85. lljnogkbetwrmshdyfcqxzixaw
  86. lujnogkbetprmshdyfcqejixaz
  87. lujnogkbetbrmshdyfcqizixgw
  88. lujeogkbetprkahdyfcqvzixaw
  89. lujnogkbevprmshssfcqvzixaw
  90. lutnogkbetgrmshdyfcqvmixaw
  91. lujnoppbntprmshdyfcqvzixaw
  92. lujnogkbetprmsmdyftqvdixaw
  93. lujuogubetprmshdyfcqvmixaw
  94. lujnorkbetprmsydyqcqvzixaw
  95. nujnogkbetprmshdyfcqvzifdw
  96. lujnogkbetpryshdygcqvziqaw
  97. ldjiogkbetprmuhdyfcqvzixaw
  98. lujnogkbetpsmghdyfcqvzixag
  99. xujnogkbetprmsrdefcqvzixaw
  100. lujnogkbejprmshiyfcqvzoxaw
  101. lujnogkletlnmshdyfcqvzixaw
  102. aujnogkbetprmwydyfcqvzixaw
  103. lujnogkbetprmsvdyfcrvzixap
  104. lujnogkbeeprmshdyfcqozixmw
  105. lujnogfbethrmshdyfcnvzixaw
  106. lujnogkbetprmshsrflqvzixaw
  107. lujuogkbnrprmshdyfcqvzixaw
  108. lutnogkbetpbmsgdyfcqvzixaw
  109. lujnqgkbetzrmshdyfcxvzixaw
  110. lujnogqbetprmshgxfcqvzixaw
  111. lujnogkbytprmshdyfcqvznxrw
  112. lujnogkbetprmshdyfcqvlidxw
  113. nljnogkbetprmsqdyfcqvzixaw
  114. lujnogkbetprmsidyfcqvfixjw
  115. lujnogkbetprmnhdyfcqvzifaq
  116. lujnogkbetprmwhdylcqvzixlw
  117. lujnogkbstprmshcyffqvzixaw
  118. lujnogkbetprmshdtfcqvzeyaw
  119. lujvzgkbetprmshdyncqvzixaw
  120. bujnogabetprmshdyfcqvzgxaw
  121. lujnogkbptpfmshdyfcrvzixaw
  122. ludnogkbetpsmshdyfcqvbixaw
  123. pgjnogkbttprmshdyfcqvzixaw
  124. lxjnogkbetprmshdyfcqezixyw
  125. lujnogkbutprmshdyfsqvzixjw
  126. lujnpgkbetlrmshdifcqvzixaw
  127. lujnogkbetprmshdygczvzixam
  128. lujnvgkwetirmshdyfcqvzixaw
  129. lujnogkbetprhshdyfcqvvixow
  130. lutnogkbetprmshdyfcrvzixgw
  131. lujnopkbetprmsudyfcqvzqxaw
  132. lujnolkbetprmjhdyftqvzixaw
  133. fujoogkbetprmshdyfcqvziuaw
  134. lqjnogkqetprmshdyfcqmzixaw
  135. lujnogkbetprmgcdyfcqvzibaw
  136. lujnogebebprmshdyzcqvzixaw
  137. lujnogkbetprmshzgfcnvzixaw
  138. luanogkretprmshdsfcqvzixaw
  139. nljnogkbetprmshdyfcqnzixaw
  140. lujnygkbetprmshdyfaqvzixjw
  141. lujnogkbetprmshdlfcqtzixag
  142. zujnogkbevprmshdyfcqvzixao
  143. lujnogkbbtprmshtyfcyvzixaw
  144. lujnogkbetjrmvhdyfcqvzixau
  145. fujnojkbetprmshdyfcqyzixaw
  146. suonogkbetprmshdyfcqvzexaw
  147. lujnogkbetprrshdyfcqvpifaw
  148. lujnogkbjtprmshdyfcqkzixat
  149. lujnogklxtprmshdyfcqyzixaw
  150. lujaogkbetprmshdyfcqvzihat
  151. kujnogkbetprmshlyfcqvjixaw
  152. lujnogkbetormshdyfcqvzbxap
  153. lujnogzuetpemshdyfcqvzixaw
  154. lujnogknetprmshdyfcwvlixaw
  155. lujnopkbetpfmshdyfcqxzixaw
  156. lqjnogkbetprmshdyfcoqzixaw
  157. lujnogkbetprmshdyfcdvzhdaw
  158. lujrogkbetprmshnyfcqvzijaw
  159. luovogkbetprpshdyfcqvzixaw
  160. xujnxgkbeturmshdyfcqvzixaw
  161. lujnogkbetprmshdyfyquzixav
  162. lujnogkbetptmshdyfcqvnitaw
  163. lujnoskbetprmvhdyfcqvziyaw
  164. dujnogkbetprmshdyfcqgzixae
  165. ltjnogkbetprmshdvfcqyzixaw
  166. luznogkbetprmshdyfcqvuixsw
  167. lujnogkbeiprmshdhfcqvzixav
  168. lujtogkbetormkhdyfcqvzixaw
  169. lujnogkbetprmssdyfcqvzilas
  170. lujnlgkbetprmshwyfcnvzixaw
  171. lujnogkbbtprmshdyfcqozfxaw
  172. lzjcogkpetprmshdyfcqvzixaw
  173. lujnogkketprmshdyfcqvzixfg
  174. oujnogkbetprgshdnfcqvzixaw
  175. zujnogkbetpbmshdyfcqvzixiw
  176. lcjnowkbetprmsmdyfcqvzixaw
  177. lujnogkbetprmsedyvcqvzzxaw
  178. lujnzikbetprmshdyfcqvzixlw
  179. lujnogkbetpyqsgdyfcqvzixaw
  180. lujnoukietprmssdyfcqvzixaw
  181. lujnogkbetyrmsydywcqvzixaw
  182. bujnogkdetprmsxdyfcqvzixaw
  183. lujnogkbetprmshdyjcqazixnw
  184. lgjnogktetprmsgdyfcqvzixaw
  185. lujnogkbeaprmahdyfcmvzixaw
  186. lubnoikbetprmshdyfcfvzixaw
  187. eusnogkbotprmshdyfcqvzixaw
  188. lujnogkbgtprmshdbfjqvzixaw
  189. lujnogkketprmshdyfcqvcjxaw
  190. lujnogkbetphmshdsfcqvzgxaw
  191. lujnhgkbdtprmshdyfeqvzixaw
  192. lujnogkbetpamsjdyfcqvlixaw
  193. lujnogkbetprmshlyfccvzxxaw
  194. lujzogkbetprmshdyfgqvzixpw
  195. lujnogkbetprfshdylcqveixaw
  196. lujnigkbetprmshdyfcqvzqxrw
  197. lujnogkbetpqmshdybcvvzixaw
  198. lujnogkbetprmsxdyfvqvzpxaw
  199. lujnogkbetprmfhdyfcqvmoxaw
  200. lujnoskbetprmhfdyfcqvzixaw
  201. lujnogkbetprmsodkfcqvzdxaw
  202. lujnogkbetpzrshdyfcqvzixpw
  203. mujnogkbetprmshdyfcsvzixan
  204. lujnonwbetprmshdyfcqvzixam
  205. lujnogkgetgrmshdyfcxvzixaw
  206. lujnogkbetpimshdyfcqvzixgs
  207. auanogkbetprmshdyfcxvzixaw
  208. lujnogkbenprishnyfcqvzixaw
  209. mujiogkbetpreshdyfcqvzixaw
  210. lujnogkbdipcmshdyfcqvzixaw
  211. kujnogkbetprmshdyucqvlixaw
  212. lujnogsbetprmshdrfcqvrixaw
  213. luynogkbetprhshdyfcqvsixaw
  214. lbjnogebetprmshdyfcqezixaw
  215. lujnogkbetprmnhtyfcqvzixap
  216. lujnogkbetprmszdhfcvvzixaw
  217. lujnogkbetprtshdywcqezixaw
  218. iuznogkbetprmshdyflqvzixaw
  219. nujnogkbetprmkhyyfcqvzixaw
  220. aujnogkbetprmshhyfcqvzijaw
  221. lujzogkbstprmshdyfcyvzixaw
  222. lujmogkbetprmshdtfctvzixaw
  223. ljjnogkbetrrmshdyfcqvzixaq
  224. lujnjgkbetprmshdyfdcvzixaw
  225. lujnogkbettrmshdyzcqvzfxaw
  226. dujnogybetvrmshdyfcqvzixaw
  227. lujnogkbetermshdmfcqvzvxaw
  228. lujnogkbetprmshdjfcdvzixab
  229. lujnogkbetirmshjyfcqvjixaw
  230. lujnogkbeiurmshdyfcqyzixaw
  231. lsjnogkbmtproshdyfcqvzixaw
  232. lujnogkqftprmshdyfcqvziwaw
  233. lujvogkbetprmshdyfcqvoixyw
  234. lujnogkoetprmshdyfpqvcixaw
  235. lujnogkbetprmshdyfcqvmghaw
  236. lujnmgkbetprmshdifcqveixaw
  237. lumlovkbetprmshdyfcqvzixaw
  238. lpjnogkretprmshdyfcqvfixaw
  239. luvnogpbetprmshdyftqvzixaw
  240. lujnogkbeturmshgymcqvzixaw
  241. lujiogkbbrprmshdyfcqvzixaw
  242. yujnogkbutprmshdyfcqvzixab
  243. lujvofubetprmshdyfcqvzixaw
  244. lujwogkbrtprmshdyfcqvnixaw
  245. lusnogkbetprmsydyfcqvzikaw
  246. lujnolkbewprmshdyfyqvzixaw
  247. lujnogkbetprvshdyfcivzikaw
  248. lujnogxbetprmszdyfzqvzixaw
  249. lujnogkvetprmxhdydcqvzixaw
  250. lujnogkbetpimsrdwfcqvzixaw
  251. lujnomboetprmshdyfcqvzixaw`;
  252.  
  253. let input = raw.split('\n');
  254. let log = console.log;
  255.  
  256. let c1 = 0;
  257. let c2 = 0;
  258. for(let row of input){
  259.     if(hasExactlyNSameLetters(row, 2)){
  260.         c1++;
  261.     }else if(hasExactlyNSameLetters(row, 3)){
  262.         c2++;
  263.     }
  264. }
  265.  
  266. log(`checksum is ${c1} * ${c2} = ${c1*c2}`);
  267. console.timeEnd();
  268.  
  269. function hasExactlyNSameLetters(str, level){
  270.     let db = [];
  271.     for(let letter of 'abcdefghijklmnopqrstuvwxyz'){
  272.         db[letter] = 0;
  273.     }
  274.     for(let letter of str){
  275.         db[letter]++;
  276.     }
  277.     for(let aux in db){
  278.         if(db[aux] === level)
  279.             return true;
  280.     }
  281.     return false;
  282. }
  283.  
  284.  
  285. //part 2
  286. console.time();
  287.  
  288. let raw2 = `mgdsdwqulhrinkatfjoyzxcbvq
  289. megsdwpulhrinkasfjdyzxcbvk
  290. megsdwpulhmibkatfjoyzccbvq
  291. megsdwtuohrinkatfjoyzecbvq
  292. megsdwpulhdinkatfyoyzxcbvb
  293. megszwpulhrirkatfjoyexcbvq
  294. eegsdwpulhzinkatfjoyzxdbvq
  295. megsdwpulhginkatfjoyqucbvq
  296. leqsdwpulhrinkatfeoyzxcbvq
  297. megsdwpblhrandatfjoyzxcbvq
  298. megrdwpudhrinvatfjoyzxcbvq
  299. mlgsdwpulhrinkatfuoyzxcbyq
  300. mensdwpunhrinsatfjoyzxcbvq
  301. megsdwpnlhrinqatfjoyzxcbuq
  302. megsdwpnlhrinkatfqoysxcbvq
  303. megsdwpulhrinkjtfjoywxobvq
  304. megsdwpclhbinkaffjoyzxcbvq
  305. mersdwpulhrinkattjoyzxcbdq
  306. megsddpwohrinkatfjoyzxcbvq
  307. mejsdwpulhrinratfjoyzxcbvl
  308. megsdwpujhrinkatfjkbzxcbvq
  309. megsdwpujhrinkatfjoyircbvq
  310. megsdwgulhrinkatojoyzxcbvm
  311. qegsdwpulhrinkatfjoyzxggvq
  312. megsdwpflhrinkatfjsazxcbvq
  313. megsdwpulhridkagfjoyzzcbvq
  314. mejsdwpulhriykatfjoyyxcbvq
  315. measdwpulhriakatfjoyzacbvq
  316. mebsdwpulhrinkatfjoyzxmyvq
  317. megsdwpflnrinkatfjoyzxcbxq
  318. megsdwpulhxinuatfjoytxcbvq
  319. megsdwsflhrinkatfjoyzxcmvq
  320. megsdwpuuhritkarfjoyzxcbvq
  321. megsdwpulhrinkazfjoyexcjvq
  322. megsdwpulhrifkatfjokzxcbvc
  323. megsdwmulvrinkatfjoyzxcblq
  324. meggdwpulhrfnkatfjoybxcbvq
  325. megsdwptlhrindatyjoyzxcbvq
  326. megsdwpulhrinkauqjoyzxibvq
  327. megsdwddlhrifkatfjoyzxcbvq
  328. megddwpulhrinkagfjoyzxcbva
  329. messdupulhrinkatfjoyzxqbvq
  330. megsdwpuahrinkatfjotzxchvq
  331. megsewpulhrankathjoyzxcbvq
  332. megsdwpulhrinkatfjoynqcbvv
  333. megsdwpulhrifkatfjotzxcbtq
  334. megsdjpulcrinkitfjoyzxcbvq
  335. fefsowpulhrinkatfjoyzxcbvq
  336. megsdwpulapinkatfjoyzvcbvq
  337. mejsdwpularinkatfjonzxcbvq
  338. megsxwpllrrinkatfjoyzxcbvq
  339. megsdlpulxvinkatfjoyzxcbvq
  340. megsdwpulhriekztfjoyzxxbvq
  341. megspwpulhrinuatfjoyzxcgvq
  342. megqdwpulhrinkatfjoyzujbvq
  343. megsdtpuehrinkatfjoyzxtbvq
  344. megsdwjulhrmnmatfjoyzxcbvq
  345. megjdwpulhrinkztfjoyzpcbvq
  346. megsdwpuljrinkawfjlyzxcbvq
  347. mewsdwpulhtinkatfjodzxcbvq
  348. megsdwpulhrinkatfcoizxcmvq
  349. meisdwpulhrinkatawoyzxcbvq
  350. megshwpulhrinkatfjoyzxcbtz
  351. megsdwpulhfinkatfjowzxcbvj
  352. megodwpulhrcskatfjoyzxcbvq
  353. megydxpulhrinkatfjofzxcbvq
  354. megsdwpulhrinkatljoytxdbvq
  355. mwgsdwpulyrinkatfjoyzxvbvq
  356. meesdwpulhrinkatfjcwzxcbvq
  357. cegsdwpwlhrinkatfioyzxcbvq
  358. megsdwpulhrinkatfqhyxxcbvq
  359. megsrrpulhrxnkatfjoyzxcbvq
  360. megsdgpulhrinkatfjoypxcbnq
  361. xegsdwpulhrinkaxkjoyzxcbvq
  362. mngsdwpulhrenkatfjofzxcbvq
  363. mecsdwpulhrinkabfjoozxcbvq
  364. pegsdkpulhrinkatfuoyzxcbvq
  365. megpdwpughrinkatfjoyzxzbvq
  366. mxgrdwpulhrinyatfjoyzxcbvq
  367. megsdwpulhpigkatfjoyzxcbfq
  368. mhgsdwpulhrinkagfjoxzxcbvq
  369. megsdwpblhtinkatfjqyzxcbvq
  370. megsawvulhrinkatfjoyzxcfvq
  371. metsuwpulhrinkatfjowzxcbvq
  372. mexsdwpulhrinkatsjoyzxvbvq
  373. megtdwpulhrinkatfjoizxcpvq
  374. megidwpjlhrinkatfdoyzxcbvq
  375. megsdwpuljrivkatfjoyqxcbvq
  376. mespdppulhrinkatfjoyzxcbvq
  377. megsdcpulhminkatftoyzxcbvq
  378. megsdwpulhriskatfjayzlcbvq
  379. mejsdwpulhrinkatfvoyzxibvq
  380. megfdwputhriykatfjoyzxcbvq
  381. megsdwparhrinkbtfjoyzxcbvq
  382. mtgsdwpulhmingatfjoyzxcbvq
  383. megsdwjulhrinkatfjtyzxtbvq
  384. megsvwpulhrinkatfjoyzecbvf
  385. megsdwpulprinkatyqoyzxcbvq
  386. zegsdwpulhwinkatfjoyzxcfvq
  387. megsdwiulhrinkatfjoyzxcjcq
  388. aegsdwpulirinkatfjoyvxcbvq
  389. mepsdwculbrinkatfjoyzxcbvq
  390. msgsdcpulhrinkctfjoyzxcbvq
  391. megsdwpulhrinkatfjoozxfevq
  392. megscwpulhrinkatmjoyzxcbsq
  393. megsdwpulhrinkltfjoyzxtmvq
  394. megsddpulhrixkatfjyyzxcbvq
  395. megsdwpulhrinkctfjoqzhcbvq
  396. megsbapblhrinkatfjoyzxcbvq
  397. megsdwpulhrinkatfjoyyxgpvq
  398. mwpsdwpulhrinkutfjoyzxcbvq
  399. megsdwpulhrinvnlfjoyzxcbvq
  400. megsdwsulorinkakfjoyzxcbvq
  401. mbgsdwpulhrinkktfjoyzxcbvg
  402. megddwpulhrindatfjoyzxcbvr
  403. memsdwpulhrinkatqjoyzxcbvo
  404. megsdwpulbrinkarfjoyzxcbxq
  405. megsdwpulhrilkatfjoynxcgvq
  406. mxgsdzpulhrinkatfjoydxcbvq
  407. megsawpulhrinkotfjoyzacbvq
  408. measdwpulhrinkctvjoyzxcbvq
  409. medsdwpulhtinkaqfjoyzxcbvq
  410. megsdwsulhrknkatfjoylxcbvq
  411. megadwpulhrinkatfjkyzxcbvh
  412. mygsdwpulhrinkatfboyzxcavq
  413. megsdwpulhrinkaufjxyzccbvq
  414. mtgsdwpulhrunkatfkoyzxcbvq
  415. megsdwpulhrinkamfwryzxcbvq
  416. meesdwpulhrgnkatnjoyzxcbvq
  417. megddwpolhrinkatfjoyixcbvq
  418. megsdwpulhrinsatfjoyzicwvq
  419. mmgsdwpulhrinkltfjoyzxcgvq
  420. meisdwpulhhinkatfjoyzxubvq
  421. megpdwpulhrinkatfroyzxcbkq
  422. megszwpuhhrinkatfjoyzxcbzq
  423. mersdwpulhrikcatfjoyzxcbvq
  424. mjgsdwpulhrinratfjoyzxcbvl
  425. megsdwnulkxinkatfjoyzxcbvq
  426. megsdwpulhrinkatlaoyzxpbvq
  427. megsdwpulhribkitfjjyzxcbvq
  428. megsdwpzlhrinkalfjoyzkcbvq
  429. megsdwpulhrinkutfjoyzxcdnq
  430. mfgpdwputhrinkatfjoyzxcbvq
  431. oegshwpclhrinkatfjoyzxcbvq
  432. megvdwxulhrinkatfjowzxcbvq
  433. mrgydwpulhrinkatfjoyzxcbvl
  434. megsdwpuqhrinkaxfjoyzxcbfq
  435. megsdwpughrinixtfjoyzxcbvq
  436. megsdwpslxrinkatfjoyzxcbvl
  437. megsdwpukhrinkatfjovzxnbvq
  438. megsdwpulnrinkrtojoyzxcbvq
  439. megsdwpuvhrinkatfjjyzxclvq
  440. vegrdwpulhrinzatfjoyzxcbvq
  441. melsdwwulvrinkatfjoyzxcbvq
  442. megsdwpulhrizkbtfjoyzjcbvq
  443. megsdwpulhrinlatfjoyzkcbvr
  444. megsdweulhrinkaofqoyzxcbvq
  445. megsdcpulhrifkatfdoyzxcbvq
  446. negsdwpulhainkztfjoyzxcbvq
  447. megsdwpklhrinkttfjoyzxvbvq
  448. megsdwpothrdnkatfjoyzxcbvq
  449. megsdwpulvrinkatfaoyzxcbvr
  450. mewsdwpulhrinkatfooyzxtbvq
  451. megtdwpulhrinkatfxoyzxcbvy
  452. zegsdwpulhrinkamljoyzxcbvq
  453. mkgodwpulhrcnkatfjoyzxcbvq
  454. megsdepularinkatfjoyzxybvq
  455. segsdwpulhrinkatfmoyzycbvq
  456. mbgsdwpulhrsnkztfjoyzxcbvq
  457. megsdwpmlhrinkatfjxyzhcbvq
  458. megsdwpulhrinkatfboyqxmbvq
  459. megsdwpulhrinkadtpoyzxcbvq
  460. megsdmpulhrjnkatfjoyzxwbvq
  461. megsdwpulhrivkatfroywxcbvq
  462. megsdwdulhrinkatpjwyzxcbvq
  463. megsdwpylhrdrkatfjoyzxcbvq
  464. megsdwpulhrvnkptfjoyzlcbvq
  465. megsdwpuihridkatfjuyzxcbvq
  466. megsdwpulhbiikatfjxyzxcbvq
  467. meggdwpulurinkatfjoyaxcbvq
  468. mehsnwpulcrinkatfjoyzxcbvq
  469. megsdwpulhrinkatfjoczdclvq
  470. megsdwjulhrinkatfhkyzxcbvq
  471. megsdwpulhrinoatfjoyzxcwvy
  472. megpdwpelhrfnkatfjoyzxcbvq
  473. megsjwpulhrwnkatfjdyzxcbvq
  474. megsdwpulhrbniatfjoyzxcbpq
  475. megsdwpulhrwnkatfjoydxcpvq
  476. megsdwrulhrinkatfjvyixcbvq
  477. yegvdwpulhtinkatfjoyzxcbvq
  478. meosdwpulhrinkatfjhyzxsbvq
  479. mjgsdwpulhrinkatfjoyyxcjvq
  480. megsdwpulhrinkatfnoyzlmbvq
  481. mehsdfkulhrinkatfjoyzxcbvq
  482. megsdwpuahrinkatfyoyzxcwvq
  483. megsdwpulhyinkatfjobzkcbvq
  484. megsdwpjlhrinkatfnoyzscbvq
  485. megsdwiulhrinqatfjoyzxcavq
  486. megsdwpulurinkatfjoykxcbmq
  487. megsdwpmlhvinkatfjotzxcbvq
  488. megswwpulhrinfatfjoytxcbvq
  489. mxgsdwpulhrrnkatfjoyhxcbvq
  490. megubwpulhrinkaafjoyzxcbvq
  491. megsdwpulhrdnsztfjoyzxcbvq
  492. megsdwpulhronkgtfjhyzxcbvq
  493. megsdwzulhfinratfjoyzxcbvq
  494. megsdwpulhrinkrtfjqyixcbvq
  495. megspwpulhrinkatfjoywxcavq
  496. megmfjpulhrinkatfjoyzxcbvq
  497. lelsdwpulhrinsatfjoyzxcbvq
  498. megsdwnultrinkatfjoyzxybvq
  499. megsdwpulhdnnkatfjpyzxcbvq
  500. megsdwpulhzinkatfjoyzhcpvq
  501. megoddpulhrilkatfjoyzxcbvq
  502. megsdvpulhrwnkatfjoyzxcbdq
  503. megsdwpulhmikkatfjoyzxcbvr
  504. meesdwpulhrinkaofjoazxcbvq
  505. megndwhulhrinfatfjoyzxcbvq
  506. megsdwpulhjihkatfjoyzxcbvb
  507. jegsdwpulhrinkattjoszxcbvq
  508. megsdwpulhrenkatfjodzxcbvp
  509. mefsdwpulhrinkatfjoyzxcczq
  510. megsdwpulhrknkatfjovzxcbvb
  511. megytwpulhrinkatfjoyzxcbvo
  512. csgsdwpulhrinkatdjoyzxcbvq
  513. megsbwpulhrinkazfjtyzxcbvq
  514. mrgsdwpulhjinkatfjoyzxcbvm
  515. megsywzulhrinkatfjofzxcbvq
  516. megxdwpulhrndkatfjoyzxcbvq
  517. mcgsdwpuphrixkatfjoyzxcbvq
  518. megsdlpulxvinkatfvoyzxcbvq
  519. megsdwpulhrinfatfjoyzicbvo
  520. megwgwpulhrinpatfjoyzxcbvq
  521. mggsdwpulhrinkatfjtrzxcbvq
  522. msgsdwpulirinkatfjoyzxcbaq
  523. megsdwpulhrineatfeoyzxcbvl
  524. megsdnpulhrinkatojoyzxcbvb
  525. mfgsdwpulhdinkatmjoyzxcbvq
  526. megsdwpulhrinkawfjuyzxcbvg
  527. megsdwpulhrincatfjoyzxcxvu
  528. mevsdwzplhrinkatfjoyzxcbvq
  529. megskweulhfinkatfjoyzxcbvq
  530. mebsdvpulhrinkatfjoyzxcbkq
  531. megddwiulhrinkatfioyzxcbvq
  532. mygsdwpulhqinkatfooyzxcbvq
  533. megsdweulhrfnkatfjoybxcbvq
  534. mrgsdhpulmrinkatfjoyzxcbvq
  535. megsdwkukhrinkatftoyzxcbvq
  536. megsqwpulhrinfatfjoyzxebvq
  537. megsdwpulhriskanfjoyzxctvq`;
  538.  
  539. let input2 = raw2.split('\n');
  540.  
  541. for(let row1 of input2){
  542.     for(let row2 of input2){
  543.         if(row1 != row2){
  544.             if(doStuff(row1, row2)){
  545.                 finish(row1, row2);
  546.             }
  547.         }
  548.     }
  549. }
  550. console.timeEnd()
  551.  
  552. function doStuff(str1, str2){
  553.     let c = 0;
  554.     for(let i=0;i<str1.length;i++){
  555.         if(str1.charCodeAt(i) - str2.charCodeAt(i) === 0){
  556.             c++;
  557.         }
  558.         //if(c doesnt keep up growing with i, stop looping already )
  559.     }
  560.     return (c === str1.length - 1) ? true : false;
  561. }
  562.  
  563. function finish(r1, r2){
  564.     log(`found it, strings are ${r1} and ${r2}`);
  565.     //trim the different character here
  566. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement