Удаление символов в строке по маске Xx и xX (adventofcode 5 day challenge)

123
04 июня 2019, 00:40

Необходимо строку в файле (в аттаче) длинной 50000 символов отсортировать по маске Xx и xX и удалить их из строки.

Т.е. строка QWERTYUuytrewqio - возвратит io (удаляя по порядку Uu, Yy, Tt, Rr, Ee, Ww, Qq,) соотвественно уисИвВиВСИвВвиУИ возвратит уисВСИвиУИудаляя вВ, Ии, вВ или Вв Мой алгоритм простенький, но как говориться на что пока могем :) Написано для Node.js - переправить в JS обычный можно без труда.

Мой ответ 9526 элементов массива осталось, из 50к после сортировки. Может кто-то подскажет лучше решение или ошибки есть? Благодарю за ответ заранее.

var fs = require('fs');
var str = fs.readFileSync('1.txt') + '';
var arr = [];
var arr = str.split('');
var con = true;
while(con) {
   con = false; 
   poly(arr); 
}
function poly(arr) {
    for(var i = 0; i <= str.length; i++) {
        for(var j = i+1; j <= arr.length; j++) {
            if (arr[j] === arr[i].toLowerCase() && arr[i] !== arr[j] ||
                arr[j] === arr[i].toUpperCase() && arr[i] !== arr[j] )
            {
                arr.splice(i, 2).toString();
                return con = true;
            }  else i++; 
        }
    }
    return con = false;
}
console.log("Final array is : " + arr.toString());
console.log("Array length is : " + arr.length);

Файл со строкой

Answer 1

Это был 5 день челленджа кодинга перед рождеством - взятый с adventofcode. Сегодня сам дошел как и что)

 var fs = require('fs');
    var str = fs.readFileSync('1.txt') + "";
    var con = true;
    while(con) {
    con = false;
        for (var i = 0; i < str.length; i++) {
            if (str.charCodeAt(i) === (str.charCodeAt(i+1) + 32) ||
                str.charCodeAt(i) === (str.charCodeAt(i+1) - 32)) {
                str = str.replace((str[i] + str[i+1]), "" )
                con = true;
            }
        }
    }
    console.log("String is : " + str);
    console.log("String length is : " + str.length);
READ ALSO
Вопрос про события. (vue js, jquery)

Вопрос про события. (vue js, jquery)

В общем имеется следующий js код (vue)Переделывал этот же код на jquery, вопрос тот же

135
Из PHP массива в двухуровневый SELECT

Из PHP массива в двухуровневый SELECT

есть массив вида [0]=>["name" => "cat_name", "id" => "cat_id", "child_cat" => ["child_name" => "child_cat_name", "child_id" => "child_cat_id"]

130
Может ли метод d3.dsv изменить кодировку загружаемого контента?

Может ли метод d3.dsv изменить кодировку загружаемого контента?

Мне нужно скормить методу d3dsv текстовый файл, экспортированный из Excel

132
Как вызвать функцию, если её имя является свойством объекта?

Как вызвать функцию, если её имя является свойством объекта?

Как я понял, если бы имя функции было бы значением объекта, проблем бы не былоНо как перебрав объект oError можно вызвать функции required и minlength...

140