isundil 7 жил өмнө
parent
commit
241274abd0
2 өөрчлөгдсөн 304 нэмэгдсэн , 0 устгасан
  1. 250 0
      d2/input
  2. 54 0
      d2/main.js

+ 250 - 0
d2/input

@@ -0,0 +1,250 @@
+wxlnjevbfozadyiqpuzkrhstkg
+wxlsjivbfodamyiqpuzcxhstkg
+wxlnjevbfouammnqpuzcrhstkg
+wxlnjevbfobwmyiqpuzprhstkg
+wxlnjefbfodamyiqpuzcnustkg
+wxlnjevbfodakyyupuzcrhstkg
+wxlnjejbfodafynqpuzcrhstkg
+wxlnjevbfodomyifptzcrhstkg
+wxlnjevbfodamyiwcuzcrhstkz
+wxlnjevbfofamyiqpuznrhstxg
+wxlnjevbfodamyiqbupcrxstkg
+wxjnjevbfodxmyeqpuzcrhstkg
+xwlnjevbfosamyiqpuzcrhstkg
+fxlnjevbfodrmyiqpuzcrbstkg
+wxlnjevpfodamyiqquzzrhstkg
+wwlnjenbfodawyiqpuzcrhstkg
+wxrnjevbfodamyiqpuzlrhstrg
+welnjeqbfodkmyiqpuzcrhstkg
+walnjfvbfodamyiqpuzcrhwtkg
+wdlnjevbfodamriqpuzjrhstkg
+wxlnjevbfodmnyizpuzcrhstkg
+wxlnjevbfodgmyiqpuxcrjstkg
+wxlnjevbfkdamyiqpudcrestkg
+wxlyjevbfodamyiqpuzcehstkj
+wxlnjevamodamyiqpuzcrhatkg
+fxlnqevsfodamyiqpuzcrhstkg
+wqlnjevbfodanyiqvuzcrhstkg
+wxlnjevbfoiamyzqpuzcrnstkg
+wxlnjevbfodamyiqpuacrhsjig
+wxlnjuvbfodzmyvqpuzcrhstkg
+kxlnjevbfolamviqpuzcrhstkg
+wxlnjesbfldamyiqpuycrhstkg
+nxltjevbfodgmyiqpuzcrhstkg
+ojlnjevbfooamyiqpuzcrhstkg
+wxlnjevbfodaffiqpugcrhstkg
+cxlnievbfodamyuqpuzcrhstkg
+wxlouevbjodamyiqpuzcrhstkg
+wafnjevbfhdamyiqpuzcrhstkg
+wxlnjevbfxdamrpqpuzcrhstkg
+wxlnjepffodamyiqphzcrhstkg
+wxlnkevbfohamciqpuzcrhstkg
+wzlnmevdfodamyiqpuzcrhstkg
+wxlzjtvbfodamyiqpuzcrhstkd
+gxlnjehbfojamyiqpuzcrhstkg
+wxlnjeoqfodamyiqprzcrhstkg
+nxllvevbfodamyiqpuzcrhstkg
+wxlnjevtfomamyiqpurcrhstkg
+sxlnjevafodamyikpuzcrhstkg
+wxlnjevbfodamyfqpuzcyhztkg
+wxlnjevbfodamyiqpulnrhstkh
+wxlnwevbfodumyiqpuzqrhstkg
+wxldjevbfodamyiqpzzcrhstkk
+jxlnjevbfodamyiqphzcrnstkg
+fxlnjeibfodcmyiqpuzcrhstkg
+wxlnjevufodamyiqpnzcrhstkk
+wglnjevbfodamyiqpuzcesstkg
+wxlvjevbdodamyiqpuzcrhstkc
+wxlnjevbfodabyicpuzcrhstkl
+wxlnjevbfodamyiqpizcrhstvt
+wolnjevbfodawyiqiuzcrhstkg
+wxlyjevbfodamyuqpxzcrhstkg
+wxlijevbfodamyikpuzyrhstkg
+wxennevbfodamyiqpuzcrtstkg
+wxlnjevbyodamyuqpwzcrhstkg
+wxlnjevbfoiomyiqpuzcrhsteg
+wxlnjehbrodamyiqpuicrhstkg
+xxlnjevufodamyiqbuzcrhstkg
+wxlojevbfodamyiqpezcrhatkg
+wxljjevbfolamuiqpuzcrhstkg
+wxlnjevbfodamyiqruzcrhstpi
+wxlnjevbfomamyiqjnzcrhstkg
+wxlnjevbfodahyiqzuzcrhstpg
+wxtnjevbfodamyiqpuzcrhsdrg
+wxlnjevbfodamynrpuzcrhstkz
+wxlqjevefqdamyiqpuzcrhstkg
+wxlnjevbfmdamyiqnuzckhstkg
+wxlnjevbfodajyiqprzcrjstkg
+wxlnjqvbhodamyidpuzcrhstkg
+wxlnjhvbfodamriqpuzcchstkg
+wglnjevbfodamyiqpupfrhstkg
+wulnjevdfodamyiqpuzcrhsteg
+vxlojevbfodamyiqpuzcrhstsg
+wxlnjvvbfodamiiqpuzcrhttkg
+wxlnjevbfodabyiqpuzzrhetkg
+wxhnjevbfodamyiqpuwcrsstkg
+wslzjbvbfodamyiqpuzcrhstkg
+rxlnjevbfodhmyiqpupcrhstkg
+wxlnjevbfhdamyiqpuvcrhskkg
+wxlrjevbxodamyiqpuzcrhstag
+wxlsbevbfodammiqpuzcrhstkg
+wxlnjzvbfodemyiqpmzcrhstkg
+wxlnoevbfodgmyiqpuzbrhstkg
+wxlnjefbfodamyinpuzcrhwtkg
+bxlnjevbfwdamyiqpuocrhstkg
+cxlnjevbjodamyiqpuzcrhslkg
+wflnjevbforemyiqpuzcrhstkg
+wxlmjeoboodamyiqpuzcrhstkg
+wxlnjevbfadaiyiqpuzcrhutkg
+wxlnmevbfodamyyqpuzcrjstkg
+wxlnjovbfodamyippjzcrhstkg
+wxlnjmvbfodamyiqpszcrhsbkg
+wxlnjeebfodamyicpuxcrhstkg
+wxlnrehbfodamyiqpuzcrhytkg
+wxlnjevbfogamyiqwurcrhstkg
+wxlujevbnodamyiqpuzcrhstng
+wxlnoenofodamyiqpuzcrhstkg
+wxsnjevbfsdamyiqsuzcrhstkg
+wxlnjevwfodamyiqpuzxrhqtkg
+wxlnjevbnodamyiqxulcrhstkg
+wxlijetpfodamyiqpuzcrhstkg
+wxlnjzvbfidamyiqpuzcrbstkg
+wxlnjevefodavyiqpuzcthstkg
+wxlnjevbfozamyiqpurcrbstkg
+wxlnjfvpfodamyiqpuzcrhntkg
+wxlnjevbfvdamyiqvuzcrhqtkg
+wilejevbfodamyilpuzcrhstkg
+wxlnhevbfodamtiqpuzcrhstke
+wxlwjevbfodahyiqppzcrhstkg
+wxlnjevbfodamyuqpuzwrrstkg
+xxsnjevbfodamyiqpuzcrhstkl
+wglnjevbdodamyaqpuzcrhstkg
+wxlnjefbwodamyiqpuzcrhsykg
+wxwnjevbfodamyiqpuzcrhpckg
+wxlnjuvbfidamyiqpuzczhstkg
+wxlnzhybfodamyiqpuzcrhstkg
+wxunjevufodamyiqpuzcrhspkg
+wxunjevbfodcmyiqpuzcrhstcg
+wxlnjevbfodhwyiqpuxcrhstkg
+wxlnjevtfodasyiqpuzcrhstkb
+wxlvjevbfqdamyiqprzcrhstkg
+sxlnjevbfodamyiqplzcrhstkq
+wxlnlevbfodamyiqpuzcrpstka
+wxlnjevbfodaiyiqovzcrhstkg
+wxlntevbfodamyiqpuzcrkntkg
+wxlnjevbfodsmyiqpuzcrhstir
+wxlnnevbfodaoyiqpuzmrhstkg
+xxlnjevbfodamyinpnzcrhstkg
+wxlnjedefodamyigpuzcrhstkg
+wxlnxeabfodamyiqpnzcrhstkg
+wxlnxevbfodpmtiqpuzcrhstkg
+wxlnjevnfodamyiqpuzcuhqtkg
+wxlnjevbfodakyiqluzcrhstmg
+wxlnjevbaodamoiqpyzcrhstkg
+wwlnjevbfoaajyiqpuzcrhstkg
+wxlnjevbfedamyiqpuzcrhsang
+wxlwjevbfodamyiqpuzcrmdtkg
+wxlnjevbhodamyiqpmzxrhstkg
+wxlnjevbfodamyiqpuzzrhwtkj
+wxlnjevbfpdvmyiqpuzzrhstkg
+wxlnjegcfodamyiqpxzcrhstkg
+fxlnjevbfodamyiqpuzcrhstat
+wxlnjevbfodcmybqpuzcrkstkg
+wxlnjevbfodamiiqpuzrrhstxg
+wxvnjevifodamdiqpuzcrhstkg
+wxltjevbfodamyiqpuzmrhktkg
+wxlnjevbfobaaygqpuzcrhstkg
+wmlnjevbfodamyiqpuycrhsukg
+wxlnjevboodamyiqpuzcrhuhkg
+wxlnjevgfodaqyiqpuzcghstkg
+wxlnjevjnodamyiqpuzcrhstke
+wclnjevbfodamyiqpuncchstkg
+wxlnjevbfndamyxqpuzcshstkg
+rxldjevbfodamyiqpuvcrhstkg
+wxlnwevbfodamywqpuzrrhstkg
+ixlnjevbqodpmyiqpuzcrhstkg
+wxlnjlvbfocamyiqpuzgrhstkg
+wxlnjevffodamyiqnuzcrhutkg
+wxlajevbfodamyiqpuccrhshkg
+vwlnjevbfodamyiqpuzcrhstky
+wxlajevbfodamyiqpuzcfhstkl
+wxlnjevbfodamniqouzcrhstko
+wxlnjevbfodamyiqpuzqrhsqka
+wxlnjeybfodamyiqpuzclhsnkg
+wxbnjlvbfoyamyiqpuzcrhstkg
+wxbnjevbfodemyiqpuzcrhstkj
+wxlnbefbfodamyiqpkzcrhstkg
+wxlnjvvbyodamyitpuzcrhstkg
+jxlnjevbfopamyiqpuzprhstkg
+wxlnjevbfodaeyiupxzcrhstkg
+wnlnjevbfodamyqqpuzcrhstcg
+wxlxzuvbfodamyiqpuzcrhstkg
+wxlnjevbcodymyiqpuzcrhstke
+wxlnjezbfodamynqpuvcrhstkg
+wxlnjevbfodamyxlpuzcyhstkg
+wxlnjevbffdaiyiqpuzirhstkg
+wxlnjevbfodymyiqwuzcrhstfg
+wxlnzevbfodscyiqpuzcrhstkg
+hxlnjevbfodamyawpuzcrhstkg
+welnjevbfodamciqplzcrhstkg
+wxlnjeqbfodawyiqpuzkrhstkg
+wxlnjelbfodamviqpuzckhstkg
+wxlneevjfodamyiqpuzcrhstkd
+wxlnjevbfodamyaqpuytrhstkg
+wxlnjpvyfodamyiqpuzcshstkg
+wxlnjevbfodmbyiqpuzcrhstkp
+wxlnjegbfodamdiqpuzcrhstdg
+wmlnjevbfodamyiqpuecrhsukg
+wxlnjevbfodamyiqpuocrhwtjg
+jxfnwevbfodamyiqpuzcrhstkg
+wxlnjevffodamyiqpurcrhstkd
+wxlnjevbfofamyiqpuzcrhsmkt
+wxlnjevbfodmmyiqpuzcrdsttg
+axlnjevbfodgmyiqpuzerhstkg
+wxtnjevbfodamyifpuwcrhstkg
+wxlgjevbfodamyiqpuzrrhvtkg
+wxlnjevbfouamyeqfuzcrhstkg
+wxlnjevbfmxamyiqpuzcahstkg
+wxlnjevffoxamyiqpuecrhstkg
+wxlnyevbfodamyiqttzcrhstkg
+bxlnjevbfodzmysqpuzcrhstkg
+wxlnjevbfodayyiqpuzcrherkg
+yxlnjevbfodayyiqpuzcrwstkg
+wllnjevbfodambiqpuzurhstkg
+wxlnjevbfsdamyiqpuqcrhstkh
+wxlcjevbfodamyiqcuzcxhstkg
+wxlnjevbfodayticpuzcrhstkg
+wxltzevbfodamyiqpzzcrhstkg
+wxlnjevbfodamgiqpuzcphstng
+wxlnjevbfqdfmziqpuzcrhstkg
+wxlnaevbfodamyiqpuzcfustkg
+wxlnjevbfodamyxqxuzcrhstdg
+wxlnjevkbodamyiqpufcrhstkg
+whlnjevbfodauyiqputcrhstkg
+wxlnjevbfodamyiephzcrhsnkg
+wxlnjevbfodfmoiqpuzcrhstkf
+wxlnjevbfodamyiqxuzaxhstkg
+wxlnjevtfotamyiqpuzcrhsttg
+wxlgjevbfodamyiqpuhcrostkg
+dxlnjtvbfodamyiqpuzcshstkg
+wxlfjevbfodumyiqppzcrhstkg
+wxlnzevbfodamyiqpuzqrhstkx
+wflnjevbfodamyiqpurcrhsthg
+wxlnjevbfodzfyiqpuzcrjstkg
+wxlnjevbfrdamviqpuzmrhstkg
+wnlngevmfodamyiqpuzcrhstkg
+walzjevbfodamyiqpuzcrhsjkg
+wqlnjevbfodamyiqpuzcshslkg
+wxlnjevkfodfmyiepuzcrhstkg
+wxgnjehbfodamyhqpuzcrhstkg
+wxlnjevbfodamyiqfuacrostkg
+wxlnjexbfodamyiwpuzcrqstkg
+wxlntevafodamyiqpuzcrhsnkg
+wxvnjevbfodamyiqpuzcvistkg
+mxlnjeebfodamyiqpuzcrhsgkg
+wxlnjevyfodamyiqpuzcrhdtkf
+wxlnjcvbfodamyicpuzcrhsckg
+wxlnjekbfodlmyiqpuzcthstkg
+wxlnjvvbfodamyiopuzcrhstqg
+wxlnjevbsodamyiqpuhcrhstwg
+wxxnjevufodamyiqruzcrhstkg

+ 54 - 0
d2/main.js

@@ -0,0 +1,54 @@
+const fs = require('fs');
+
+function Box(str) {
+    this.hash = str;
+
+    var letters = {};
+    for (var i=0; i < this.hash.length; ++i) {
+        var l = this.hash[i];
+        if (letters[l] === undefined)
+            letters[l] = 0;
+        letters[l]++;
+    }
+    this.lettersByCount = {};
+    for (var i in letters)
+        if (this.lettersByCount[letters[i]] === undefined)
+            this.lettersByCount[letters[i]] = true;
+}
+
+Box.prototype.compareWith = function(other) {
+}
+
+function read(cb) {
+    fs.readFile('./input', 'utf8', (err, data) => {
+        var lines = [];
+        data.split("\n").forEach((line) => {
+            if (line.length > 0)
+                lines.push(new Box(line));
+        });
+        cb(lines);
+    });
+}
+
+function ex1() {
+    read(function(boxes) {
+        var count3 = 0,
+            count2 = 0;
+        boxes.forEach(function(box) {
+            if (box.lettersByCount[3])
+                count3++;
+            if (box.lettersByCount[2])
+                count2++;
+        });
+        console.log(count2 * count3);
+    });
+}
+
+function ex2() {
+    read(function(boxes) {
+    });
+}
+
+ex1();
+ex2();
+