Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve(inp) {
- function shaking(inp) {
- let str = inp.shift();
- let subStr = inp.shift();
- while (true) {
- let regEx = new RegExp(subStr, 'g');
- if (str.match(regEx) === null) {
- console.log('No shake.');
- break;
- }
- if (str.match(regEx).length >= 2) {
- str = shakingFirstAndLast(str, subStr);
- subStr = removingFromSubStr(subStr);
- if (subStr.length === 0) {
- console.log('No shake.');
- break;
- }
- } else {
- console.log('No shake.');
- break;
- }
- }
- return str;
- }
- function shakingFirstAndLast(str, subStr) {
- let before = str.substring(0, str.indexOf(subStr));
- let after = str.substring(str.indexOf(subStr) + subStr.length);
- str = before + after;
- let before2 = str.substring(0, str.lastIndexOf(subStr));
- let after2 = str.substring(str.lastIndexOf(subStr) + subStr.length);
- str = before2 + after2;
- console.log('Shaked it.');
- return str;
- }
- function removingFromSubStr(subStr) {
- let index = Math.floor(subStr.length / 2);
- let before3 = subStr.substring(0, index);
- let after3 = subStr.substring(index + 1);
- subStr = before3 + after3;
- return subStr;
- }
- console.log(shaking(inp));
- }
- solve(
- [
- 'astalsastavisasta baby',
- 'sta'
- ]
- );
- // solve(
- // [
- // '##mtm!!mm.mm*mtm.#',
- // 'mtm'
- // ]
- // );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement