From 5bbcb1f542c239ce1e9b5a7d3c7214a7bf001d6a Mon Sep 17 00:00:00 2001 From: EliteTK Date: Sat, 24 May 2014 12:58:39 +0100 Subject: More random stuff. --- split3.c | 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 split3.c (limited to 'split3.c') diff --git a/split3.c b/split3.c new file mode 100644 index 0000000..7f2fc18 --- /dev/null +++ b/split3.c @@ -0,0 +1,76 @@ +#include +#include +#include +#include + +int *genccountdict(char *); +char *nodup(char *, int *); +char *nnodup(char *, int *); +char *dup(char *, int *); + +int main(int argc, char **argv) +{ + int i; + if(argc!=2) + exit(1); + + char *string = *(argv+1); + int *dict = genccountdict(string); + + for(i = 0; i < strlen(string); i++) + string[i] = toupper(string[i]); + + printf("nodup: %s\n", nodup(string, dict)); + printf("nnodup: %s\n", nnodup(string, dict)); + printf("dup: %s\n", dup(string, dict)); + return 0; +} + +int *genccountdict(char *input) +{ + int *dict = calloc(sizeof(int), 26); + int i; + for(i=0; i1) + output[outpt++]=input[i]; + output[outpt] = '\0'; + int ndict[26]; + memset(ndict, 0, 26*sizeof(int)); + return nodup(output, ndict); +} -- cgit v1.2.3-54-g00ecf