Skip to content

Instantly share code, notes, and snippets.

View Underdoge's full-sized avatar
🏠
Working from home

Underdoge Underdoge

🏠
Working from home
View GitHub Profile
@Underdoge
Underdoge / minesweeper.js
Created March 6, 2017 02:55
minesweeper
function minesweeper(matrix) {
var sum=0;
var mines=[],line=[];
for (var y=0;y<matrix.length;y++){
line=[];
for (var x=0;x<matrix[0].length;x++){
sum=0;
if(y-1>=0){
if(matrix[y-1][x])
sum++;
@Underdoge
Underdoge / boxBlur.js
Last active March 5, 2017 07:28
boxBlur
function boxBlur(image) {
var sum=0;
var blurred=[],line=[];
for (var x=0;x+3<=image.length;x++){
for (var y=0;y+3<=image[0].length;y++){
sum=0;
for (var i=x;i<3+x;i++){
for (var j=y;j<3+y;j++){
sum+=image[i][j];
}
@Underdoge
Underdoge / avoidObstacles.js
Created March 3, 2017 23:26
avoidObstacles
function avoidObstacles(inputArray) {
var min=2;
var test=false;
var max=inputArray.reduce(function(a, b) {
return Math.max(a, b);
});
while(min<=max+1&&!test){
test=true;
for(var i=0;i<inputArray.length&&test;i++){
console.log(inputArray[i]+" "+min);
@Underdoge
Underdoge / isIPv4Address.js
Created March 3, 2017 08:44
isIPv4Address
function isIPv4Address(inputString) {
return /^([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$/.test(inputString);
}
@Underdoge
Underdoge / arrayMaximalAdjacentDifference.js
Created March 3, 2017 07:46
arrayMaximalAdjacentDifference
function arrayMaximalAdjacentDifference(inputArray) {
return inputArray.reduce(function(acc,currval,currind,arr){
if(Math.max(currval,arr[currind+1])-Math.min(currval,arr[currind+1])>acc)
acc=Math.max(currval,arr[currind+1])-Math.min(currval,arr[currind+1]);
return acc;
},0);
}
@Underdoge
Underdoge / areEquallyStrong.js
Created March 2, 2017 20:21
areEquallyStrong
function areEquallyStrong(yourLeft, yourRight, friendsLeft, friendsRight) {
return (((yourLeft==friendsLeft)||(yourLeft==friendsRight))&&((yourRight==friendsLeft)||(yourRight==friendsRight)));
}
@Underdoge
Underdoge / palindromeRearranging.js
Last active March 2, 2017 07:30
palindromeRearranging
function palindromeRearranging(inputString) {
var palindrome=true;
var center=0;
var array=inputString.split("");
while(palindrome&&array.length>0){
if(array.indexOf(array[0],1)>0)
array.splice(array.indexOf(array[0],1),1);
else
if(center<1)
center++;
@Underdoge
Underdoge / arrayChange.js
Last active March 2, 2017 06:12
arrayChange
function arrayChange(inputArray) {
var moves=0;
for(var i=0;i+1<inputArray.length;i++){
if(inputArray[i]-inputArray[i+1]>=0)
if(inputArray[i]-inputArray[i+1]==0){
moves++;
inputArray[i+1]++;
}else{
moves+=inputArray[i]-inputArray[i+1]+1;
inputArray[i+1]+=inputArray[i]-inputArray[i+1]+1;
@Underdoge
Underdoge / areSimilar.js
Last active March 2, 2017 05:26
areSimilar
function areSimilar(A, B) {
var different=[];
for (var i=0;i<A.length;i++){
if (A[i]!=B[i]){
different.push(i);
}
}
if(different.length==0)
return true;
else
@Underdoge
Underdoge / addBorder.js
Created February 28, 2017 05:51
addBorder
function returnLine(text){
var line=["*"];
var letters=text.split("");
for(var i=0;i<letters.length;i++){
line.push(letters[i]);
}
line.push("*");
return line.join("");
}