Skip to content

Instantly share code, notes, and snippets.

View shkesar's full-sized avatar

shubham shkesar

View GitHub Profile
@shkesar
shkesar / data_validation.c
Created August 18, 2016 08:55
Internshala programming problem
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
int data_validation(char *fmt, char *data) {
while (*data) {
if (*fmt == 'a' && !isalpha(*data)) return 0;
else if (*fmt == 'n' && !isdigit(*data)) return 0;
else if (*fmt == 'x' && !isalnum(*data)) return 0;
else if (*fmt == '*') return 1;
@shkesar
shkesar / cipher.c
Last active August 13, 2016 10:44
XOR based cipher program in C
#include <stdio.h>
#include <stdlib.h>
#define MAX_LEN 1024
int main(int argc, char const *argv[])
{
char *plain = malloc(MAX_LEN * sizeof(int));
char *pass = malloc(MAX_LEN * sizeof(int));
@shkesar
shkesar / index.html
Created May 2, 2016 06:21
A very simple notes taking app using HTML5 local storage
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>Notes</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
@shkesar
shkesar / config.py
Created May 2, 2016 06:19
NLP in python to test sentiments in mailbox
import nltk
nltk.download('stopwords')
@shkesar
shkesar / MPlayer.java
Created May 2, 2016 06:16
Music Player using JavaFX
package com.github.shkesar.JMusic;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
def nQueens(n: Int) = (0 until n).permutations filter {p =>
val i = p.zipWithIndex.toSet // p[i] is the column of the queen on ith row (must be a permutation of 0 until n)
i.map{case (c, d) => c + d}.size == n && // No 2 queens can have same col + diag
i.map{case (c, d) => c - d}.size == n // No 2 queens can have same col - diag
}
for {
(solution, num) <- nQueens(8).zipWithIndex
_ = println(s"Solution #${num + 1}:")
col <- solution
@shkesar
shkesar / gantt-chart.html
Last active March 30, 2016 08:48
Gantt Chart
<html>
<head>
<title>Gantt chart</title>
<style type="text/css">
.process {
}
#input {
}
#add-process-button {
@shkesar
shkesar / malloc.c
Created February 7, 2016 14:57
Memory allocator
#include <assert.h>
#include <string.h>
#include <sys/types.h>
#include <unistd.h>
void *malloc(size_t size) {
void *p = sbrk(0);
void *request = sbrk(size);
if (request == (void*) -1) {
trait Component {
val childrens = new collection.mutable.ArrayBuffer[Component]()
//val parent: Component
def operation: Unit
def add(component: Component) = ()
def remove(component: Component) = ()
def getChildrens: Iterator[Component] = collection.Iterator.empty
}
object Main extends App {
val text = "08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08 49 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 62 00 81 49 31 73 55 79 14 29 93 71 40 67 53 88 30 03 49 13 36 65 52 70 95 23 04 60 11 42 69 24 68 56 01 32 56 71 37 02 36 91 22 31 16 71 51 67 63 89 41 92 36 54 22 40 40 28 66 33 13 80 24 47 32 60 99 03 45 02 44 75 33 53 78 36 84 20 35 17 12 50 32 98 81 28 64 23 67 10 26 38 40 67 59 54 70 66 18 38 64 70 67 26 20 68 02 62 12 20 95 63 94 39 63 08 40 91 66 49 94 21 24 55 58 05 66 73 99 26 97 17 78 78 96 83 14 88 34 89 63 72 21 36 23 09 75 00 76 44 20 45 35 14 00 61 33 97 34 31 33 95 78 17 53 28 22 75 31 67 15 94 03 80 04 62 16 14 09 53 56 92 16 39 05 42 96 35 31 47 55 58 88 24 00 17 54 24 36 29 85 57 86 56 00 48 35 71 89 07 05 44 44 37 44 60 21 58 51 54 17 58 19 80 81 68 05 94 47 69 28 73 92 13 86 52 17 77 04 89 55 40 04 52 08 83 97 35 99 16 07 97 57 32 16 26 26 79 33 27 98 66 88 36 68 87 57 62 20 72 03 46 33 67 46 55 12 32 63 93 53 69 04 42 16 73 38 25 39 11