finish 04, add strslen func
This commit is contained in:
parent
7c2a71ae73
commit
181fc7425a
25
04/_.h
Normal file
25
04/_.h
Normal file
|
@ -0,0 +1,25 @@
|
|||
#pragma once
|
||||
|
||||
#include <ctype.h>
|
||||
#include <stdlib.h>
|
||||
#include <limits.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include <assert.h>
|
||||
#include <strings.h>
|
||||
#include <wctype.h>
|
||||
#include <math.h>
|
||||
|
||||
#define MAX(X, Y) ((X) > (Y) ? (X) : (Y))
|
||||
#define MIN(X, Y) ((X) < (Y) ? (X) : (Y))
|
||||
#define ABS(X) ((X) >= 0 ? (X) : -(X))
|
||||
|
||||
char** str_split(char* a_str, const char a_delim);
|
||||
|
||||
int str_index(char *str, char c);
|
||||
|
||||
int number_of_element(char *str, char c);
|
||||
|
||||
long gmc(long a, long b);
|
||||
long lmc(long a, long b);
|
||||
long lmcs(int array[], int n);
|
140
04/main.txt
Normal file
140
04/main.txt
Normal file
|
@ -0,0 +1,140 @@
|
|||
XMMAMXMMSMXMMXMSMAXMAXSXMXXMXSMXXASMXSXMXMXMXMXXXXMASMSMAMMMSSSMASXMXSASXMXAAXXMMXAMXSXMASXAXMAMXXXMSAMSAMXXXMAXSAMXSAMMXXXSSMSMSSXMSMAAXXMX
|
||||
SXSAXXXXXXAMAMXAXXMMSMSAMXAMAMMMMXMXAMXMAMASAMMSXMASXAAMAXMAAAAXAMXMMMASMMMMMMSMMXAMASASMSMSMSMSMSASAAMSAMXMASAAMSXAMAMXSMMXAAXAAAMSASMXMASX
|
||||
SXSMSMXAMSSMMASXSSMMAAXAMXAMMXAAMASMMSAXMXAXAXAXMASXMSMSASMMMXMMMSAMAMXMAXMAAAMAMSXMAXMMAMAAXAAAXMMMMMXSAMSSMMXSXAMMSMMMXAASMMMMMMMSASXAAXXA
|
||||
SAXAAAMAAAXAXMAMMMAMMSXMMSSMSMSMSASAAMXMSMSMSMSMSSMXAAXMASMASAXAAMXSASMXMASXSMMAMMAMASMMSMSMSMSMMMSSXMASAMAMXMAXMMMMAAAXMSMXXAXMAXXMAMXXMAXX
|
||||
MMMSMSAXXASMMSASMSAMXXAAMAMASMMXMASMMSSMSAMAMAXASAMXSXXMXMXASMSMSSMSXXMAMXMAMMSMSXXMMSAAXMAXMAMXAMASAMXSSMXSAMXXAXMSXSSXXMAXSMSSXXXMSMSMSSSS
|
||||
SAAXMAXSMXMXMSAMXSASASMMMMMAMASMMAMAXSXAMMMMMAMMMXMAMMSMMMMMMAXMXAMXAMSMMAMAMAMASMXXXMMMMSMMSXSXSMASXMXMAXXSASMMXSMMAMAXSMMMSAXMMSXAXAAAXAAM
|
||||
SMSSMXMXMMAMXMAMAXXMAXSAMXMASXMAMASMMSMMMAAXMAMXMASMSAAAAXASXSSMSSMMXMAAXSSMSMMAMAMASXSAXAXXAASAMMMMMSMSMMMXAAAMASAMMMAMXAXAMMMAASMMMSMSMMMM
|
||||
XXXMXAMAXAAMAMMXSXXMAMSSMMSXXAMXMMSXAXAXASXSMSAMXXXAMXSSMSASMMAAAAXAXMXSAAAXSAMXSAMXMASASMSMMSMAMSXAAMAAAAXXXXAMXSAMXMMSSMMSSXMMMMAAAXMMXMAS
|
||||
SMMMMMSMSXXXXSAAMAMMSMXXXAXMSMSAMXMMMMSMXXMMXMASMMMMMAXAXMXMASXMMSMMMSAMXMAMMAMASAMXMAMAMXAXXAMMMMXMMXXSSMSMMSMMXSAMXMAMXMAMAXMXXXXMXXAMXSAS
|
||||
MAAAAMAMXAXSMMMXSAMAMMMSMXSAAASASAMASAMXAMAXMAXAMSAASAMXXMASMMASMXMXAAAMXXAAXAMMSXMSMMXAMXSXMASAASMSAAMAMMAMAAAAAMAXMMMXMMSSSMMMMSXAMMSMMMAS
|
||||
XSSXXXXSMSMAAXAMSAMMSASXAXMMMAMASXXAMSSMSSSMSMSAMMSMSASXMSASASAMXAMMXSSMXMMSSSSXMAXMAMSXSAXAMASMXMAMMSAAMSAMMXMMMSAMSMMAAXAAMMSAAAMXMAMASMMM
|
||||
XMAXSSMSAMSXMMSXSXMASXSMSMMMXXMASMSSMXSAAAAAAMMAMAMMSASMMMASAMXMMASAAMXMSAAMXAXMMMSMAMAMMAXXMAXMSMMMAXXMMSASMMSAXAMSAASMSMMSMAMMMMSAMMSAMAXS
|
||||
MMAMMAAMAMAXSAMXXXXXMMSMMAAAAXSAMAAAAAMMMXMMMXXAMXSAMXMAAMMMMMMSSSXMASAMXSASMSMSAAAXAMAAMMMSSXSAMSXMMMSSMSAMAASXMASXMXMXAXAXMXMSXMSASAMXSXMM
|
||||
ASXMXAMMXMXXMASMSXSASAMASXMMSXXAMMMSMXMSSSMSXSSXSAMXSMSXMMMAXMAXMAXXAMAXAMXSAAASMSMSMSASAMXAAASMXAXXXAAAAMMMMMSXAXAXXMMSMMMSMSXSAASAMXSMMMSS
|
||||
MMASMSMMXSSMSAMXAASAMSMMMMAXXASXMMXMASXXMAAMAMAMMXXAMXAXMASXSMSSSMSMMSAMSSMMXMMMMXXXAXAMASMMSMXXSMSMSSSMMMAMAMXXMMMASAMXAAAAMSAXMMMXMMMXAAAA
|
||||
XMAMXXAXAMMXMASMSMMXMAMSASAMXXAXASXMAMMASMMMAMXMXMMSSMMMSASAAAAAAXAAAMAMXAMAAMASXXMMSMXSAMXAMXXMAXAAXAAMSMXSASASXXMASMMSMMSSSMMMSAMXSXMSMMSS
|
||||
SMSSMSSMMSAXSAMMMAXXXSXSASMMMSMSMMAMMMMAMAASMSMSXAMAAAAAMXMMMMMXMMMSMSSMSAMSXSAMAMXAAAXMASMSSMMXMXMXMSMMAAMSAMASXXMASXXAXXAMAMXAXAXAXAMXMAMX
|
||||
AMAAAMXAMXAMMAMXSXMMMMAXXMAXMAAMASXMASMMSMMXAAAXAMMSSMMMSAMXXAMAAAXAXXAAMXMAMMASXAMMSSXSAMAMAMSSSXMSAXXSMMMMMMAMAMMXSMSSXSAXAMMMSMMMSAMXMASM
|
||||
MMSMMSMSMSXXMXMXAMMAAMMMMSXSSMSMAMASASAAAASMSMSSSMAMAXAXSASMSASXSSSMSSMMMSMMXSAMMSSMMAMAAMAMAAAAMAAMSMMMAAMAMMXSSSMSMMAMMSAMSSMMAMAAMAXSSMSX
|
||||
XAXXMAAAAMASMAMXMASXSSMAXMAXAAXMMMXMASMMXSMAAAXAAMXMMMAMSXMXSASAMXAMXMASXXAAAMASAAAXMASXMSMMSMMMMMMMAMASMXSASXXXXAXSAMASXMAMAAMSMSMSSMMMAAXM
|
||||
MMMMMMXMAMAAMASAMMMAMAXSXMMMMAMAXXMMMMXAMMMSMSMMMMSXMASMXAMASXMASXMMAMMMASMMSSMMMSXMXAMAASAAXASMXMAXMMAXAASMMMSSSMASAMASXSSMSXMAXXAAXXASMMMX
|
||||
AMASXMMSAMMSMMMASXMSSSMMXXAAXAMXMMSAMMMSXSAMXXAXAXMAMXMASXMAMAMAMMASXSASMXMXXAAXXAASXMMSMMMMMAMXAXMSXMMSMXMMAXAAAXMSAMAXAXAAXSSXSMSMMSMSXMAM
|
||||
XMASAAASASXMAMXAMXAAAMAMMSSSSMSMSAXASMAXXMMMMMMXMMSAMAXMXXMASMMSSXMXAMAMXMXXXSMMMMMMAXAMXMSXMSMSMSAAXAASMMASXSMSMMXXAMMXSXMMMMXAAAAAAAAMAXSA
|
||||
SMASXMMSAMXXMMASMMMMSMAMAXMAXXAAXSSXMMASMMAAAAMASMSASMSXMSMASAAXXMXMSMXMASMMMXAAMASMMMXSAMMSMAAAAAXMXMXXASAMXMXAMSMSSMSAAASMSSMSMXMSSSXSAMXS
|
||||
XMAXAXMMMMMMXMMMAXMAXMASXXSSSSMSMASXAMASASXSSMXAMAXAMAAXAAMXSMMMSMAAAAMSAMAAXSSMSASAXAASAMAAXSSMXMAXSMMMAMXSAXSASAAMMAMMXMMAAXAAMMMMAAAMMSXA
|
||||
SSXSAMAAAAASXMXSMMSSMSXSXMAMAAAMMAMSMMASMMAMAAMSMMMSSSMMSASASMAAAXSSMSMMASXXMAXXMASMMMMSSMSSMMAXXSMAAXMASXXMAXSXSMMMMMXMXSMMMMSMMAAMMMMMASXM
|
||||
MAMMXSMSMSMSAMXAAAAAXSAMXAMMSMMMMXMAMSMMMMSMAMAAAMAMAAXXMSMASMXXMMMAMAMSMMASMMMMSAMXSAMMAMXMAXXMMASXSSMXMASMXMMASAMSAMSAMXAAXXMASXSSXAXMASMX
|
||||
XMASAXXMXXXSAMXMMMSMMXMAMXSAMXSMAMMAXSAMXAXXXXXSSMAXSMMXXXMAMMSMXASAMMMMMMAMAAMXMAMXSAXXAMMSSMSASAMXMXMXMASXMAMAMAMSASXMASMMMAMAMAAAXMXMASAX
|
||||
SXMMXSAMXMMSAMSXSAMAMMXMSMAAAAMMASMSMSAMMMXMMSAMXXSXMXMMXMXSAAAAMMSAMMAAAMAXMXMSSSMASXMSXXAAAASMMXSXMASXMXSASXMAMSMMMMASMMSSMXMAMMMMMMAMAMXM
|
||||
XXMAXMAMMMAMAMXAMAMAMAAMAASXMASMXSXAASXMXSAAAXAXAMMASAMXSMAXMSSSSMMMSSSSSSXSMSMMAAMXMSXAXMSSMMMXXMAMSAMXXASXMAXAMXAMXMASMAAXAAXMMSMSAXXMMSSM
|
||||
AMMXXMAMXMSMMMMSMMSSMSXSAXMAMXAMXXXMMMXSASMSMSSMASXSMAMMSMASXXMAXXAAAXXAXXAAAXAMSMMAAMMMSXAAXMXMASMMXSXXMASMSSMMMSAMAMASMMSSSSXSAAAMMSMAAAMA
|
||||
SXSAMSAMMXMAAAAMAXAMMXMAXXMXSAAMXMASXMAMMSAMAAXSAMXAXSMAXMASAAMXMAMMSSMMMMSMMMSMAMMMAMXXMMSSMSMSASMSAMSXSAMMAAAXXSAMXMAXAXMAMAAMSMMMASMMMSSX
|
||||
MAMAXXMMXAXXXMSMSMMSSXMASMSAMXSMSAXXAMASXSAMMMXMMSMMMXXSXMXXXAMXAXXMAMXAAXXAAAMMMMSSMMSAMXAMAAAMAXAMAMXXAAMMMSMMXMASMMMSSMSAMMXMAXAMXSAXMXMM
|
||||
MXMSMSMSMMSXSAMXMAXAMMXMXXMAMAMAXSAMXSXSASXMASAAAAMXMXAMMSMMXMAXSAAMXSSMSSSMMMSAXAMAAAMAXMASMMSMSMSMSAMXSMMSMMMXAXAMAXAAAXXASXMSSSMSXSMMXAXA
|
||||
SXMXAAXMAMAMMAMAXAMXSASXMSXSASMMMXXMAMAMXMASXMSSMSAMXMSMAAAXXXMAMMMXMXMXAMAAAASAMSMSMMXMMSMMXSAAXAAAMAXAXAXSAMSSMSSSMMMMXSSMMAXAMXAAMMMSSMSS
|
||||
MAMMSMXSAMSMSAMXSMAAMMSAAXAXMXAXAMSAASAMMSAMMMMXMXMAMMAXSMSMASMMMXMAAMMMSSSMMXSXAXAXASASAMXMXMASMXMMSSMMSSMSAMAAAAAAXMASAMASMXMAMMXMXXAMAAAA
|
||||
SAMAASXMXMXASAXMAXAMXAXMMMMMXSXMSAASXMASAMASMAXMASXSSMMMMXAAXAAASMSMXSAAMXMASMMMXMAMASASXXAAAAXMXXXAAXAAXMASMMSMMMSMMMSMMSAMXAXMSSMMMMMSMMMM
|
||||
SASMMMMSSMMMMMSMXSXMMXXAAAAAAAASMMAMSMXMMSXMXMSMMXXAAMXAMSXSAXSMSAAAAMMXXASAMAASXMAMXMAMASXSMSMSSSMMSSMMSMAMMAXAAMAMAXMAMXAASMMMAMAAMAMXMMSM
|
||||
SXMAXSAAXAXXAXAAAXAXAXSSSSSMSSXXAXXSXSAMXMMSXMAXMASAMXSSXMAXAMMAMMMMMSAMSAMXXMMMSAMXAMXMMXMAXAAXXXAAXAAAXMAXMXSSMSASMMSAMSXMAAAMASMMSASMMAAX
|
||||
SAMMMMMSSSMSMSMMSSMMXMAMXAAXAXMSMMSMASMXAAMAASAXMAMXXAXAAMAMAMMAMXXMXMAXMXMXXSXMXMAMXSXXXXAMSMMMMSMMSMMMSSXSAAXAXMMMXASAMSXMXSMMMSAXSAMAMSMS
|
||||
SXSXMSAAAAAAASXXXAMASMSMMSMMMSXAAMAMMMSSXMMSAMASMSSMSMMMXMSSMMSSMAXSAMSMXAASMMMSAMXMXMMSASAMXXAAMXAAXXAXAAAMMMSAMXAXMXXAAMASAMASXMXMMAMXMXAS
|
||||
MAAXMMMSMMSMSMMMMAMASAAMMAXAXAXSSSMMSAMMSXAXSMAMAAMAXXMSMAAAAXAXMAMSASAMXMSAMAAXASXSMAAMAMAMAXMSASMMSSMMMSMSXAXXASMSSSSSMSAMASAAMMAMXAMSAMAM
|
||||
SMMSSMXXAXXMAAMSSMMMMXMSSMSSSSXMAAXAMAMAMMMMXMAMMMMSMMMAAMSMMMMSMSXSXMASXSMMSSXXMMAASMMSMSMMXSAMMMAMMXMAXXXAMASMMAXAAMAMAMXSXMAXSSXSAASMXMAM
|
||||
AAXAAMAMAMMSXSAAAXXAXXXXAMSAAMMMSMMSXMMSMSMAXASAMXSASASMMXMAXSXSAMAXMMXMMAAXAAMSSMSMMMAAAXMASMAMXXAXMASMSMXMASXMSMMMSMMMMMAXMASXMAMXMSXMASXS
|
||||
MMMSSMASMMMAMMMMSMSMSMMSAMMMMMAXXXAXASAXAAAXAMXAMXSASXSXXSSSMAAMAMMMASMMSSMMMXMAAMXMAMXSSXMXSMMMMSMXSAMAAAAXSXMXAXAXAXMASMMXSAAMMAMMSMAMMSXM
|
||||
XMAXAXMSASMAMSSMXAAAAAXXAMXAAXXAMXXSMMAMSMXSSXSXMMMMMAMMXAAAMMSMAMAAMAAMAXXMAXMSMMASMSAMMXMMMMMAXAAXMAXSASXSMAMSMSMSMMSASAAMXMXAMAMXASAMAMAS
|
||||
XMXXAMXMAXXAMASMMSMMSSMSSMSSSSMXXSXMXMAMAMXAMAMXMXMMXSASAMMMSAXXXXXSXMSMASMMSAMMAMASAMXSXAXAAAMSSMSMMMMXAAXAXXMAXAASXXMSSMMMAXSSXSSSMSXMASAM
|
||||
MSSSMSXMSMMXMXSXAMAAAAAXAAXXMAMSAMMSASASASXMMSMSMSMAAXSAMXMAMXSMSSMMMXMMMSAAXAASAMXXMAMMMXXMSXSAMXMMMSAMXMXMMMSXSMSMXXMASMASMMMAMAAMXMASAMAS
|
||||
AAAAAAXAAAASMMMMSMMMXMMSMMMSMAMMAMASASASASASAMXAAAMMMSAMXAMASMMAAXAASASAAMMMSMMSAMXSMSASXSSXAMMXMAMAXMMSASXSAAAXAMAMMXMXXMAAMAXAAMXMASMMASAM
|
||||
SMSMMMMASMMMAAMXMXSMXSAMXAAAMASMMMXSXMAMXSAMXMSMSMSAMXAXSXSASAMAMSSMSASMMMAXXXMXMMMAAMASAAAMMSXXXXMSMMXSXSASMSSSMSAXMXSMSMSSSSSMSXASAMAMAMAX
|
||||
XMMMMXMAMAXSMMSSMAAAAMASXMXMSAMAMXMMMMMXXMAXMASAXXSMSSXMSAMXSAMMMAAXMAMASXMSMSSMMAMMXMAMMMMSASXXSMAXAMASXMMMXXAXXMMMXAAXMAAAXMAXMXXSASMMSSSS
|
||||
XSAMXAMXSMMSMSAAMSMMMSAMASXAMASAMSAMXAAMXSSMXXMAMMMSMAMMXAXASAMXMSXMMAMAMAMAMAAASXSXAMXMAMXMASMMMSASAMAXASXXXMAMMMSAMMSMMMMSXXXMXXMMAMAAAAAX
|
||||
SSSSSXMXAMAXXMXMMMMSAMXSAMMMMXAMXXASXMSXMMMMMSMMSMSAMXAXXAAXMMSAXMMSSSSSSSMAMSSMMASXXSASASAMMMAAASMSXMASXMMXSMAMXAMXMAAAMAMXMSMMMMAMXMMXMMMM
|
||||
XMAXAMXXAMXSMXSSMSXSMMMMASAXXXMASMMMAXMASXMAAXAAAXMAMSSMMSMXAAMXXAAXAAAXAXXXXXAAMSMMMSASXMXMASMMMSAMXAMXMASMMMAXMXSASMSMMSSXAAXMASMMMXMAXAXX
|
||||
AASXMXAXSMMXAAXAAAXSASXSXSMXXAMXMAMSMMMAMAMMXSMMSMSAMMAAAXXSMMSMSMMMMMMMMMXSMSMMMMAAAMMMXSASAMAMAMAMAXXASAMAASMSMXMAXXAAAXAXSMXXAMAMAASXSMMS
|
||||
XXXMXMMXAAMSSXSMMMXSAMASAMAMSSMXMAMSASMASMMSAMXSAMXMASMMMSXMXMAAAAASMMAAXAAMAXSAMXSMXSASXSAMMXAMAXAMAASXSASMMMMAMXMMMSSMMXMMMXAMXSSMSMSMAMAX
|
||||
MMMAXAXXSAMXXXMASXAMAMAMMMAMMXAAXXXSAMSAMMASAMXMAMXMASMAAXAAASMSSSMSASMSXMXSSMXXSAXAXXAXAMAMSSSXMSSMXMSASAMXSXSAMAAAAXMXSAXAXMMSAAXAAAMXAMSS
|
||||
AAAMMSMMMASAXMMMAMXSXMASXSSSMMMMSMAMXMMMXMXSMMASAMSMMSXMMSMSMSAAAMXSMMXMASAAAMAMMMSSSMMMSSMMMAMAMAAMXAMMMAMAAASMSXSMSXSASMMSXMASMMMSMSMMXSMX
|
||||
MMSXAAAXSAMXMMAMAXAMXMXAMMMMMXAAAMXMMSAMXSAMAMASASAAXMMSAXXXAMMMMMAMXSASAMMSMMAMAMXAMXMAXAAXMAMMMSSSMMSXSXMMMMMAMAMAAAMASAMXAMASAXAAXXASMSAA
|
||||
SAXMSSXMMMMAAMAXSMMAAXMMAXAAMMMXMMAMXSASMMAMXMASMSMXMMAXXAMMMMXMAMXSAMXMASAXXSXMAMXMSAMXMXSMMMSMAMXXAXMASXXAXASAMAMMMSMAMAMXAMASMMSXMXAMAMXS
|
||||
AAXAAMXSAAMMSSMSAASXMSSXSSMSMSAMSMMXMXMAAMMSSMXSAMXSXMMMMAMAMSASASXMXSAMAMXMAXMASMSXSASMSMMAAAAMAMSSSMMAMXSASXSASASAAXMMSSMSMMASXMASXMSMSMAX
|
||||
MSMMMSASMXXAAAXMMMMAAAXMAXXAAMSMAASXMAMMSXAAAXAMXMASXAAMSASAXMAXAXXASMXMMSSMSMMXAAXAXAMAAASMMSSSXSAMXAMXMMSASXSMMXXMSSSXXAAAXMASAXAXXAAAAMXM
|
||||
SXASAMASASMMMXMXAMSMMMSMAMMASAMMSMMASAMXMMMSSMSSSMAMSSMXSXSMSMSMMMMMMMXAXAMXXAMSMSMSMSMSMMMSAAXXMMMSSMMSXAMAMAXMMXSXXAMXSMMMXXAMMAMXMXMXAMXA
|
||||
ASAMXMMMAMMAMMMXMXXMAXAMAXSAXASAMASMSASAXAXAAMXAAMMMXXMASMSAAAAXMXAXAXMAMXSASAMAAAAAMAAAXAASMMSSMAMMAAAXASMSMSMASMASMAMMMAAXSMAMSSMASXSMSAXS
|
||||
MMMMXSAMSMSASAAXSASXSSMSAXMXSAMASAMXSAMASMMMSMMMMSSSMAMAXXMSMSMMMSMSMMMSXXMASMMMSMSSMMSMSMMXASAMXASMSMMSAXMAAMSAMAXXMAMAMMAASXSMAXXXSAMAMXMX
|
||||
XMAMAMXSAASASMSMAAXMMAXMXSAMXMMXMXMAMAMXMAAAAAXXXXAASMMMSMMXXAXAXAAAAAAAAXMMMAAXXMAXXMAMXAMXXMASXMSAXMASASMMXMMXSSMMSSSSSXMXXAXMXXMXMAMXMSAM
|
||||
MAAMMMMMMXMAMMXXMSMSSXMSAMXAAMSXAAMAXAMXSSMSSSMSMMSMMSMAAAMAXMSSSMSMSMSSSMMAMMMXSMSXXMAMSAMSSMAMAXMXMMAMXMAXSAAAMAMXAMMAMXMMMXMSAMSASAMAMSAM
|
||||
AXSMSAXMMMMSMMXAXXAAASXXMASMMXAMSMXMSMSMXXAMAAAXXAAAXXMXXMMXSXAXMAMAXMXAXMXAMXMASXAAMSAMSAXAAMSSXMSAMMMXSSXMASMMSMMMMXMASAAASASMAXSAMAMXMSAM
|
||||
SMMASASMSAAAAMSMMMMMMMMAMXMSSXSMXXAMAXAASXXMSMMMMSMSMXXMSSMMAAMXXMMMAMXMSXSXSAMXSMMMMAMMSAMSSMMXMASASXSAXMAXXAMXAAMMAMSAMMSASXSMXMMMMSSMMSAM
|
||||
MAMAMAMASMSSXMAMAXXASASAXAAAMAMAMSMSAXMSMAAXXSAAXXAXXXMMAAASXXSAMXASAMMXXMAASAMXSASXMAMMXMXAMAXXMAMAAAMSMMSMAMSSSXSMAXMAXMMMMAMMAMXMAAAAMMXS
|
||||
MAMMMXMXMXXMASASMSSMMASASMSMMAMAMAMAMASAXSXMASXSMMAMASMMSSMMMAAMSSMSASAMXAMXMASXMXMASXSXAXMASXMXMXSMMXMAXMASAAMAXAMXSMMSMXAAAAMSXSAMMSSMMMAS
|
||||
SMSMMASAMMXMMSASXMASMAMAMAAXMASASMSAMXXAXMSAXMAMAMMMXMAAAXMAMXMAAXXXMMMXMSXMAXMXMAMMMXAXXMSAMXSSMMXXSXSMMSASMSMAMMMAMAAXMSMMMMAXXSXMXAMXAMAS
|
||||
MAAAXXSAXXAMXMAMXMAMMXMAMXMMMAMAXXMASXMSMXASXXASMMXMXSMMMSMMSMXMASMMSAXMSAMXMSSSSSMXSMSMSAMXSXAAAXXXMAMAMMMMMAMXSAMSSMMSAASXXSASMSASASXSXMAS
|
||||
MSSSMMSAMSXMXSMMSMMSAMXSMAXSXSMSMSMSAASASXAXXMASXSAMXXAMASAMXMAXMAMASAMSAMXSXAAMAMMXMAMAXXSXSMMXMMXMMSMAMAAMSMSXMMSXAXAMMMXSAXASAMAMMMAMSMXS
|
||||
XXAXMAMAMMASAAAAMAMXAMAASXSAMXAMAMXAMMSAMMXMXXAMXSMSMSXMASMMASMSMAMMMXMMAMAMMMSMAMSAMMMMMAMAXSMSMSXAMASASMSMMXMAMXMXMMMXSMXMMMMMMMXMXMAMAMAM
|
||||
SMMMASMSMSAMXSMMSAMSMMMXAMMAMMXMMMXMXXMMMMASXSMSAMMXMXMMMXAMXXAAMASXMAXSAMXSAMXMMSSXSASAMAMAMXXAAXMMSMSXSAXXMASAMASAMXSAAMXMAAASAMMMXSXSAXAM
|
||||
AAAAAMAXAMXSAXMAMXXXMAMSMXSAMMMMAMMXMSASXSASAAAMMSMSSMMAASMSSMSMSMSASAXSMSMSXXSAMXMASASXXAMMSMSMSMAAMXMMMXMASXSASASXSAMSMMAMASXSASMMAMMSASXS
|
||||
MMMSMMMMAMAMMXMSMXAAMAMXXXXAXAAXAXMAMMAMXMXSMMMMAAAMMASMXSAAXAXXAASAMSMMAAASMMSASAMXMAMMMMXAAXAAAMXMMAXMASXXMASMMMSAMXMAXSMSAMMSXMAXAXASAMXA
|
||||
SSMMXAAMAMSXSAAASXMMSMSMSMSMSXXMASMXMMSMSSMSXXAMSMSMSXMMMMMMMMMMMMMAMXXMMMSMAAXMAMSAMXMXASMSSSSSSSMASXXMASMXMMMAAXMXMXMAMAAMMMASAMAXMXAMAXMM
|
||||
XAASXSSXXMXASMSMSMXMAMAMXAAAMAXSASAMXXMASAMXAMXMAAXAMAAXSAAXXAAMXMSMMMXMASAXMMSMMAMXXAXMXSAXAAAAAAMAMMAXAMXXMXSMMSSMMAMXSMXMASMSAMMXSASXSMAM
|
||||
SMMMAAAASXMAMXMXXAAMASASMSMSMAXMXMXAMSMMMMXXMMASMSMAMSSMSSSMSMXSAAXMAMXSXSAMSAAAXSMMSASASMXAMXMMMSMSXSAMXAAXXAMAAAMAXASASXMSASASAMAAAXMAMXAM
|
||||
AXSMMMMMXAMMMASMSSXSASASAAAXMMMSAMXXAAAAAXAMXSXSXMAXAXXMXAMXMAAMMMMSAAAXMMAMMSSSXXAAAAMXXSAMXSXAXMAXAXXMSSMXSASMMMSSMMMAXAXMASAMXMMMSXMXMXMM
|
||||
MMMAXMXXXMMASASAAAMMMMXMXMMMAAAXAXAXSSSMSAMXAMXSAXSMMXSMMASAMMMXSAAAMMMXAMXMAXMAMXMMSXMXMAMXAASXXSAMXMMXMAMXMAMAAXAAAAMAMSMMAMXMXSAAMXMAXAMS
|
||||
XAXMMMMSXAAXMAMMMSMMASAXMMASXMMXXAXXXAXMAMSXXSASXMXMSAMXASAMSMAASMSXMASXMMSMSXSASMSMMXAXMXSMSMMXMXSAXMMXSAMXMXMSXMMSXMXSXXAMXMASASMMXAXMSMSA
|
||||
SSXXAAAMMMMSMSMAMAXSASASMSASAAASXSXSSSMAAAMMMMMSXAAXMASAMMAXSMMXSAMXMAXAMAAAMMMAXAAAMMMMMAXMAAMAMAAXMAAASASXMXAMMXMAMSAMMSMMSMMMASAMSXXXAXXM
|
||||
MXAXSSXSASASAAMXSMXMASASAMASMMMSAMAMAMXXMSMAMAASXSSSXAMAXMMMSASAMMMAMMSMMSMMSAMAMSSMAAAAMSSMSAMAMMSXSAMMSSMAMSASAXMAMMASAXAAAAXMAMAMAASMSMSX
|
||||
MMMMXAXSASAMXMMAAMAMXMAMXMXMASXMXMAMAMXXMAMXXMSXMXAXMASXMSAASXMASXSMMAAMXMAASXMXMXAXSSSMXAXMMXXAMXAASXMAMASAMMAAXSMSMMMMXXMSSSMMXXXMMSMAMAMM
|
||||
XAXSMSMMMMMMMMMSMSMSAMAMAXAMXSAMMSMMXSAXSASXXSMXSMMMSXSAAAMMSAMAMXMAMSXSAMMAMMMXMSSMAMXMMSMMMASXSMMMMSSXSAMXSMSMSMAXMAMASXMAMAMMMSMXMXMXMAMA
|
||||
MXSXAAAAXAMASMAMMXXMAXAMXSMXASAMAAAXAXXAMAXAMXAAMAAAXMMMMMSAXXMMMMMAMXAMXXXMMASAAXXXMSMXAXAAMAMAAAMAAAMXMAMXSXAXAMMMSMSAAXMASXAAAAAAXAMASASM
|
||||
MXSMSMSMSXSASMMSAXSXSMSMMMMAASAMSSSMMSSMMMMSSMMMSSMSSMAAAXMMXMSAAMSMSMSMMMSASASAMXSMXMMMAMSMSASMSMMMMMXASMMAMAMSSMSAAAMAMXSAMXXMSSMMSMSASXSM
|
||||
XASMMMMXXAMASAMMMMSAXAXXAAXXXSAMAMAXAAAXXAAMAMXMXAXXAMSSMSASAAMSXMAAAXAAAMAAMAMAMASAAXXXXXXXMASAAAXXAAAXAMMSMSXMXAMMSSSMXMMASMSMXMXMAXMASAMM
|
||||
MMSAMAXMMXMAMAMMMAMMMMMSMSSMXSAMMSMMMSSMSMSSXMAMMMMSAMXMASAMMSMXXSMSMSSSMXMSMMXSMXXSASMXSMXAMXMMSSMSMSSMASAMXXASMSMXAAAXAASMSAAMAMSSMSMMMMMA
|
||||
SAMAMMXAMMMMSAMAMXXAAAXAXAAXAXXMXAXSAAAAXAAMASASAMXMAXAAAMAMAAXMXMAXXXAMXXXXXMAXMSMMSAMXAMASMMAXAAXMAAXMAMXSMSAMAASXMAMMMXMAMMMMASAAXSAMXXXM
|
||||
MASXMXSSXMAMXMSSSMSSSSSMSMSMMSSSXMAMMSSMMMMSMSAMAMXXASMSSSSMSXSAMMSMSMAMXMASXMASASAMXMSXMSAXAXXMSSMMMMMSSXXXAMMMMMAXXAXXSAMAMAMSXMXXMMSAMXMX
|
||||
SAMXAMXAXSASMMAAAAXAAAAAXXAAXAXMAMAMMAXXMXXXAMAMSMSMAAAAXXAAAAMXMXAAAXAMSAMSAMXMXMAXSXMXXMASAMXMXAAAAAAMMMMMSMXAMXMASAMXXAXAMAXAMXSSSMXXXAXM
|
||||
MXMXMMMSMSASAMXSMSMMMSMMMSSSMMSSXMAMSAMSAMXMMMAXAAAMMMMMMSMMMSMXSMMSMXXMSAXSXSAMXSXMAAMSAMXMXSAMAMSSSMMMAAMAXMSMXMXMXAMXMXMXXSMMMMXAASAMSMSA
|
||||
XMSSMSXXASAMXAMXAAXXAXMAMAMXMXXAXMAXMASAASXMXSMSMSMXAAXMASMAMAMXMAXXAAXMSMMSAMMXMASAMXMAAXMAMMAXXXAMAASXSSSMXMASXSMXSSMMASMSAAXSAMMSMMXMAMAX
|
||||
MXAAMXAMAMXMMXXMMMXSXMXASAMASXSMXSMMMMMMXMAMAMMAMAAXSSSMSXMAMAXXMSMSSXSAXMAMAMAAXXSMXXSMSMSAAMSMSASMSMMAAAXAASAXMASAXAAXMAAMMMMXAMMAMMXSMSMS
|
||||
MMSXMMSMAMXMASXMASAMXSMMMAXAXXXMASAXAAAXXSAMXMSASMSMMAAXAMSSSMSSMAAXAAMMMMMSAMXSSMMMSMSAXASMMMAAXAMAXAMXMASMMMXMMMMMSSMMXMMMXSMMSMSAMMAMMAMS
|
||||
MAXAMAMSAMXMAXASAMASASASMXMSMMXMASASXSXMXSMSMXSXXAMXMMMMMMXAAXAASMSMMMMASXASASAXAASASAMAMAMAXXMMMAMMSAMXMAXMXXAMSXMAAAXMASXMAXMAXAMMSMASXSXS
|
||||
MASAMAMXMMXMAXXMASXMASAMXSAXASXMMSAMAMMSMMMSMXMASMMAXAAXXAMMMMSXMXAAAASXXMASAMASMMMASMMXMSMXMASXSXXAXAAXMXSSMSMXAAXMSMMXAMAMXSMAMAMAAXXMMXAM
|
||||
MMXAMSMSAMXMMSMSXMAMXMXMXMAXMMMSAMAMXSAAAAAMAMXAAASMSSMSSMAAXMXASXMXSXSXSSMXMAXMXAMXMAMMMAXAMXAASMMMSSMXSAMXAAMXSXMMAASMSSSMMMMMSXMSSXSAAMAM
|
||||
ASXXMAASXMAXXAASMSMMMMAMXMSMAMXMASXMAMXSSMSXMMXXSMMMAXAMXXSXSAXMMAXAMAMXAAXXMMMMSSMAXAMSMMSMSMMSMMXAAAAAAAXMSMXXAAMSAMXAXMXAAAAAAAXXAMSMMSAM
|
||||
ASAMXMXMASASAMMMAAXAAMASAAAMAMXSAMAMXSMMXXMASXMAXAAMXSMASXMXMMXSSSMXMASMXSMXSAMXAASMXSMSAXAAAMXMAXMMMSMSSSMAMAMSSMMAMXMSSMSXMSMSSMMMAXSAMXMM
|
||||
XMASXXMSMMAXMXXMSMSSXSASMSMXSSMMSSXMMSASXSSMMAAAMSSMMXMXSAMMMXMXAXAASXXMMAMXSASMXMMXAXAXMMMSXSASMMMSAMXAAMAAMAMMAXXSXSMASAAAMXMMAMXSAMXAMSMX
|
||||
MSAMXAMSXMAMXSMAMXAAMMMMXAXAXAMXAMASASMMAXAASMXXXAMXSAMAMAMAXAMMAMSMXMAMSMMMSMMXSXAASMSMMXXMXMASAAAMAXMMSMSMXAMSXMAMMXMAMMSMMAXSAMXAXMXMMASA
|
||||
XMAXMSMMAMSAMSMAMMMSMMMSSSSMSAMMMSAMMSXMMMSMMXMSMMSAMAMAXASXSSSMAXAXMMMMAAXASAMAAMSMAAXSMAAAMMMMXMSSSMSAMXAMXSXSASAMXSMSMXXASAMSASXMASAASASX
|
||||
MSSMMXASXMXMMXMASXAXAXAXAAAASAMMXMASXMXXSAXAMXAXAAMASXSXSXSMAAXXSXMXSAASXSMXSAMXMAASMSMMSSMSAAMAMXXAXAXASMXSAMAMAMASXSAXSASMMXXXXMAMAMMXMXSA
|
||||
MAMAMSMMAXAMSSSMSMMMAMXMMMMMMXMXXSXXAAAMMMMAMMMSMMSAMXAXAMXMSMSXMAXAXSXSAXMAXAMXXSXAXMAMXMAXXSSMSSMMMMMXMXAMXSAMSMXMXMAMMXMXXMASMXMMASXMMXXM
|
||||
MAMAMAASXMSAAAAASASAAAXMXXXMAXSXMMMSXMXSASMMMAAAAXXAAMMMSXMMAAXASMMSMMMMMMSSMAMSXMSMXSAMXMAMXXAAAAAMSXMASMMXAMAMXXXSXMAMXASXSASAMXSMMXAAAXSX
|
||||
SSSSMSMMXAMXMXMMSAMMSXSMSMMXSAMXAAAXMAMSASXSXMSSSMMXMASAMASXSSMMMXAXXAAASXAAMAMXSAAXAMASAMXSXSMMSSMMMASASAXAXSAMXMAAAMSSMASAAMXAMXMASXMMMXAX
|
||||
XAAMAXSMMSMMMSMMMMMMXAAMAMSAXASXSMXSASXMMMXSXMMMMAXAXMMASAMXAAMXMMMSSXSSSMSMMXAMMSMSXSAMXSXMASXAAAAXSAMXSXMMMAMXMAASXMAAMAMMMASMMMSAMAMSMMMX
|
||||
MXMMAMAMAAAXSAMMAMAAMMXXMXMASAMMXMAXMMAXMAMMASXSSXSASXSMMMSMMXMAMAMXXAMAXXXSSXASAMXAMXMSXXAMAMMSMSMMMASXMASXXXXMMSAMXMSMMASXMASXAAMASMXAASXM
|
||||
MMXMXSAMSSSMSAMSASMSSMSASXMAMAMXSXSMAMMASAXMAMAMAAMAMAASAMXXSMSXSMSAMXMXMSMAMSXMASXMMMMMXMXMAXXXAMMMXAXXSAMMMMXMAMAXXXXASXSAXSMMMXSAMXMMSMAS
|
||||
ASAMXMAXAAAXMAMSASXMAAMAAXMAXAMASAMXAAMASMSMASAMXMMSMMMMMSAXXAMAMAMASAMAMAMAMXXSMMXAAXAXMASMSMAMMMAAMMSXMXXAAXAMMSMMMXSAMAMMMMAAAASMMMMSAMAM
|
||||
XSMSASMMXSMMMSMMAMXSMXMXSXXSSXMAMAMSMSMAMAAMXMMAXMXAXXXAXMAXMSMXSASMMXSMSASMSMASMASMMXAMSXXAAMAMMSXSAMSXMSSSSSMSAAAAAXMAMSMSASXMMMSAAASMMMSS
|
||||
AXASMSXMAXMXXASMXMMXXXSAMMXMAMMASMMSAAMAMSMXSAMXSMSMMXMASMXMSAMXSASAAXXASASAAMAMMAXASASXXAMSMSMXMSAMMAMMXAAMMAASMSSMMXMAMXASAXXMSASXMXSAAAXM
|
||||
SMMMXXXXSSXSXMASMAMMMXMASASMAMSAMAAMMMMXMMAMMSMAAXMXSXSSXMASXASMMMMMMXMMMMMMMMXSMXSAMAMAMXMMMMXAAMMMMAMAMMSMSMMMAMXAXSSMSMMMSMAMSAMXMASMMMSS
|
||||
MASXSSMAMMAMAXAXMAMAMASXMMSMAMMSMMXSXAMXAMAMAAMMXMASAMXXMMMXMXMAMXSASXASAMXMXSASAMMAMAMAMAMXAASMSMSXMAXMMMMAXMAMAMMMMMAAXXAAAMXMMMMXSAMASAMX
|
||||
XSMAXAMAXMSMAMMSSSMXSASXMASXMSAMXSMMXMMMMSMMXSSMSSMAMASMMASXSMSAMXSAMSMMXSMMAMMMAMMMSXSASXSSMMSXAASMSMMAAAMMMXMXMXSAASMMMSMSXXAAAMSMMXSAMXSA
|
||||
XMMMMXSMSMXAMSXMAAAMMAMAMXSMSMMMAMAMXSXMAAAMSMXMAAXXXXMASAXXAASASAMXMMMSAMAMXXXXAMAMSASASAXXXAMXMSMAAAMSMMSMSAAASASAMSAAXXAAXSSSMSASXXMAXSAM
|
||||
AMASAAMMAMAMXMAMMMMXAAMSAMXXAXXMAXSMAMAMSMSMAASMSSMSAXSMMSSMMMSAMASXSMASMMAMMXSSXSASMAMAMMMSMSSXMAMMMSMMAXMASMSMSAMXMSXMMMSMAXMAMSAMMMSASAMX
|
||||
XSAMMAXSASASAMAMXXXMMMMMASXSSSMXSXMMMMAMMSMMMXMXMAAAAMXMAXXAXXSMSXMAAMAMXSSMSAAMAMMSMSMSMMAMAAAAASAMAXASXMMXMXAXMXMAXXAXSAMXXAMSMMAMAAXMAXSS
|
||||
MMASXMASAMAMASXSSMMAXMXSMMAAAAAAMASXSSSSXAMXSAMXSMSMMAAMXXAXMMSAAXMSMMASXXAAMMSMAMSMMAAAMMAMMMSMMMAMXMAMMXSAMXSSMXSMSSSMMASXXAMAXSXSMMSAMXXM
|
||||
MSMMMSMMAMMMAMAAXAMSMSAMAMXMSMMMSAMAMAMAMASAMXMXMXXMSMMSMMSMSAMAMXMAXSAMXMMMMAXMMMAAXMSMXSAXAXXMXMXMAMSXMASASAMXMASAAMAASXMMSSSSMSAMXMSXXMSX
|
||||
XAMAAAXXXASASMMMMXMAAMAMMMMMAASXMAMXMMMAMXMASMMAMMMXAMSAMXAAMMMAXAXMMMASAXXASXSASXSSMXAMXSASXSSMSSMMXSMAMASAMXSAMMMMMSSMMSXAXXAAMXMASXMXAAMX
|
||||
SASMSSSXMAAAXAAXXASXSSSMAAASMSMASMMMSASXSXMXXASMSAMMSXSASMMSMMSSSMSXXXMAXMXASAMAMAXAMXAMAMAMXAAXAAAMMAXXMASXMAMXSSXSXAXAXSMSSMSMMSXASAMXMASM
|
||||
AXXAMAMMMXMSMSMMXMXAXAMXSMMSXAMMMAAAXASASMSSSMMXSXMAXXXXMMXMAMXAMAAMXMAAASMMMAMSMSAMXXAMXSASMSMMSSMMSASMMASMMXMSMXAMMMSXMXAMXMASXAMXSAMXSASA
|
||||
AMMMMAMAMMXMAXAMSXMSMSMMMMAXXMSSSMMSSXMXMASAMSAMXMMSSSSMMSAMAMMAMXMSAMAMAXAMMXMXXXMMSSMSXSASAASAMXMAAAMAAXMXSAMSAMXMAXMMSMMMAXAMMMAMSMMXMASM
|
||||
XMAAMASAMMAMAMAMAMXMAMXAMMAMAXXAMSAMMMMXMXMAMSMSAMXMAXAAASXSAXSAMAXSASASASXMXSSMMMSAAAAXXMMSXXSMMMMSSSMXSSMAMASXAMXSSSXAAAASMMMSAXSAMXMASAMX
|
||||
MMSSSMSMSMXMASAMMXAMAMMXSXXAASMAMMXMSAMSSXSAMXAAMXXSSSMMMSAMAXMASXMXMSASAAAMMSAAMAMMSMXMXMAXMMXXSXAAAAXXXAMAMXMXXMXMMAMSSMMMXSAAMMXXMMSMSXMX
|
||||
AXAAMXSAAMXMASXSXMXSAMXXMMMXMXMAMMMMMSAAXMASAMXMASXAXAXMXMXMSMSXMMMXXXAMXMASXSMMMSAMXMASMMXSAASAMMSSSMMMSXMXXMAMXMASXAXAMXSXXMAXMMMSMMAMMASX
|
||||
SAMAMAMSMMAMXSXMASAMXSXMSASMMXSSSMAXAMMAMXSAMXXXXSAMXMXAAMAXMAMAAASMSXSAMSAMMSMSXMASASMSAXMAMSMAXAXMMXAMMASAXMAMXSASMMXMSASAXSMSMSMAAMXXSAMA
|
||||
AMXXMMMAXSSSXMMMAMMSMAAASMMAMAMMAMSSXXXAMXMASMAMMMAXAXMSASAXSAMMSMSAMXXAMMMSAXAXXMASAMAXMSXMMXMMMSSMXXMAMSMASMMMMMASASAXMASAXXAAAMSSSMSMMASM
|
||||
MXMASMSMMXMAXAAXXSXAMMXMSASMMAXXAMXAMMMMMXSAMMAMXSASXSAXMAMXSAMXMXMAMMMAMAAMXMSMASAMMMSMXMAXSXXMAMAXMASMSAMAMXAAASXMAMXXMXMXSAMMSMAXMAAAAAMX
|
||||
AAAMMAAXMSMMMSSMMMXSSMXXXMMXSASMSSSMAAAAXMMASXXSAXXSMXMXMSMMXSMAXASAMAXXMMMSAMMAXMASMMMAAXSMSAMMSSMMAMAXAAMASMSSXSAMSMMMSMSAXAMAXMSMMSMMMSSX
|
||||
SXXXMSMXMMASMXMMMAAMAAMSSMMAMMMAMAAMXSXXMAMAMMAMXMAXAXMSMMAMSMMXSMSXSMMAMXXAXMXXXSMMMAMXSXXAXMXMXAXXSXXXSXMXXMMMXMXMAAXSAAMXXAMXMAXAXAAXSMMM
|
||||
AMMSMMXSASAMMASMMMSXMMMAAAMASAMSMSMMAXXMMSMMAMSMAAMXSXMAXMAMAAMXMMMMAMMMMMSMMMMMMMSASMSAMMMSMXMMSMMMMMMMXMASMSSMSSMSSSMSMSSMMSSSSSSSMMSMXAAS
|
||||
MAXMAAASXMXSMAMXAAMXSAMSSMMXMAXXAXXMASASAAAMSAMXXSXAAAAMXSASMSMAAAXMASAAAAAAAXAXAAMMSAMASAMASASAAAAAAAAMASAMXAAAAMMAMAAXMAAAMAAXAXAAXAAMSMMS
|
||||
SSXSMMMSXXASMMSSMXSASAXMMMXSAMXMSMMMSSMMSSSMXMASAAMXSMMXMAXMXXMSSMXSASMSMSSSMSXSMXMMMAMSMXSXSSMSSSXSSSSSMSAXMSMMMSMASMMMMSSMMMSMXMAMMMSXXAMX
|
84
04/mylib.c
Normal file
84
04/mylib.c
Normal file
|
@ -0,0 +1,84 @@
|
|||
#include "_.h"
|
||||
|
||||
// NOT MY CODE
|
||||
// https://stackoverflow.com/questions/9210528/split-string-with-delimiters-in-c
|
||||
char** str_split(char* str, const char a_delim)
|
||||
{
|
||||
char *a_str = strdup(str);
|
||||
char** result = 0;
|
||||
size_t count = 0;
|
||||
char* tmp = a_str;
|
||||
char* last_comma = 0;
|
||||
char delim[2];
|
||||
delim[0] = a_delim;
|
||||
delim[1] = 0;
|
||||
|
||||
while (*tmp)
|
||||
{
|
||||
if (a_delim == *tmp)
|
||||
{
|
||||
count++;
|
||||
last_comma = tmp;
|
||||
}
|
||||
tmp++;
|
||||
}
|
||||
|
||||
count += last_comma < (a_str + strlen(a_str) - 1);
|
||||
|
||||
count++;
|
||||
|
||||
result = malloc(sizeof(char*) * count);
|
||||
|
||||
if (result)
|
||||
{
|
||||
size_t idx = 0;
|
||||
char* token = strtok(a_str, delim);
|
||||
|
||||
while (token)
|
||||
{
|
||||
//assert(idx < count);
|
||||
*(result + idx++) = strdup(token);
|
||||
token = strtok(0, delim);
|
||||
}
|
||||
//assert(idx == count - 1);
|
||||
*(result + idx) = 0;
|
||||
}
|
||||
|
||||
free(a_str);
|
||||
return result;
|
||||
}
|
||||
|
||||
int str_index(char *str, char c) {
|
||||
|
||||
int i = 0;
|
||||
while (str[i])
|
||||
if (str[i++] == c)
|
||||
return i;
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
int number_of_element(char *str, char c) {
|
||||
int nbr = 0;
|
||||
for (int i = 0; str[i] != '\0'; i++)
|
||||
if (str[i] == c)
|
||||
nbr++;
|
||||
return nbr;
|
||||
}
|
||||
|
||||
long gmc(long a, long b) {
|
||||
if (b == 0)
|
||||
return a;
|
||||
return gmc(b, a % b);
|
||||
}
|
||||
|
||||
long lmc(long a, long b) {
|
||||
return (a / gmc(a, b)) * b;
|
||||
}
|
||||
|
||||
long lmcs(int array[], int n) {
|
||||
long result = array[0];
|
||||
for (int i = 1; i < n; i++)
|
||||
result = lmc(result, array[i]);
|
||||
return result;
|
||||
}
|
58
04/part1.c
Normal file
58
04/part1.c
Normal file
|
@ -0,0 +1,58 @@
|
|||
#include "_.h"
|
||||
|
||||
int strslen(char **strs) {
|
||||
int len = 0;
|
||||
for (int i = 0; strs[i] != NULL; i++)
|
||||
len++;
|
||||
|
||||
return len;
|
||||
}
|
||||
|
||||
int search (char **strs, int i, int j, int up_down, int left_right) {
|
||||
char to_find[4] = "XMAS";
|
||||
for (int incr = 0; incr < 4; incr++)
|
||||
if (strs[i + (up_down * incr)][j + (left_right * incr)] != to_find[incr])
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
|
||||
if (argc != 2)
|
||||
return 1;
|
||||
|
||||
char *input = argv[1];
|
||||
char **inputs = str_split(strdup(input), '\n');
|
||||
int inputslen = strslen(inputs);
|
||||
|
||||
int nbr = 0;
|
||||
for (int i = 0; inputs[i] != NULL; i++) {
|
||||
for (int j = 0; inputs[i][j] != '\0'; j++) {
|
||||
if (i > 2) { // Up
|
||||
nbr += search(inputs, i, j, -1, 0);
|
||||
|
||||
if (j > 2) // Up Left
|
||||
nbr += search(inputs, i, j, -1, -1);
|
||||
if (j < strlen(inputs[i]) - 3) // Up Right
|
||||
nbr += search(inputs, i, j, -1, 1);
|
||||
}
|
||||
if (j > 2) // Left
|
||||
nbr += search(inputs, i, j, 0, -1);
|
||||
if (j < strlen(inputs[i]) - 3) // Right
|
||||
nbr += search(inputs, i, j, 0, 1);
|
||||
if (i < inputslen - 3) { // Down
|
||||
nbr += search(inputs, i, j, 1, 0);
|
||||
|
||||
if (j > 2) // Down Left
|
||||
nbr += search(inputs, i, j, 1, -1);
|
||||
if (j < strlen(inputs[i]) - 3) // Down Right
|
||||
nbr += search(inputs, i, j, 1, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
printf("nbr: %d\n", nbr);
|
||||
|
||||
return 0;
|
||||
}
|
1
04/part1.sh
Executable file
1
04/part1.sh
Executable file
|
@ -0,0 +1 @@
|
|||
gcc -lm -g -Wall -Wextra -include_.h part1.c mylib.c
|
57
04/part2.c
Normal file
57
04/part2.c
Normal file
|
@ -0,0 +1,57 @@
|
|||
#include "_.h"
|
||||
|
||||
int strslen(char **strs) {
|
||||
int len = 0;
|
||||
for (int i = 0; strs[i] != NULL; i++)
|
||||
len++;
|
||||
|
||||
return len;
|
||||
}
|
||||
|
||||
int search (char **strs, int i, int j, int up_down, int left_right) {
|
||||
char to_find[4] = "";
|
||||
for (int incr = 0; incr < 4; incr++)
|
||||
if (strs[i + (up_down * incr)][j + (left_right * incr)] != to_find[incr])
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
|
||||
if (argc != 2)
|
||||
return 1;
|
||||
|
||||
char *input = argv[1];
|
||||
char **inputs = str_split(strdup(input), '\n');
|
||||
int inputslen = strslen(inputs);
|
||||
|
||||
int nbr = 0;
|
||||
for (int i = 0; inputs[i] != NULL; i++) {
|
||||
for (int j = 0; inputs[i][j] != '\0'; j++) {
|
||||
if (i <= 0) // Up
|
||||
continue;
|
||||
if (j <= 0) // Up Left
|
||||
continue;
|
||||
if (j >= strlen(inputs[i]) - 1) // Up Right
|
||||
continue;
|
||||
if (i >= inputslen - 1) // Down
|
||||
continue;
|
||||
|
||||
if (inputs[i][j] != 'A')
|
||||
continue;
|
||||
if ((inputs[i - 1][j - 1] == 'M' && inputs[i + 1][j + 1] == 'S') ||
|
||||
(inputs[i - 1][j - 1] == 'S' && inputs[i + 1][j + 1] == 'M')) {
|
||||
|
||||
if ((inputs[i - 1][j + 1] == 'M' && inputs[i + 1][j - 1] == 'S') ||
|
||||
(inputs[i - 1][j + 1] == 'S' && inputs[i + 1][j - 1] == 'M'))
|
||||
nbr++;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
printf("nbr: %d\n", nbr);
|
||||
|
||||
return 0;
|
||||
}
|
1
04/part2.sh
Executable file
1
04/part2.sh
Executable file
|
@ -0,0 +1 @@
|
|||
gcc -lm -g -Wall -Wextra -include_.h part2.c mylib.c
|
10
04/test.txt
Normal file
10
04/test.txt
Normal file
|
@ -0,0 +1,10 @@
|
|||
MMMSXXMASM
|
||||
MSAMXMSMSA
|
||||
AMXSXMAAMM
|
||||
MSAMASMSMX
|
||||
XMASAMXAMM
|
||||
XXAMMXXAMA
|
||||
SMSMSASXSS
|
||||
SAXAMASAAA
|
||||
MAMMMXMMMM
|
||||
MXMXAXMASX
|
|
@ -23,3 +23,5 @@ int number_of_element(char *str, char c);
|
|||
long gmc(long a, long b);
|
||||
long lmc(long a, long b);
|
||||
long lmcs(int array[], int n);
|
||||
|
||||
int strslen(char **strs);
|
||||
|
|
|
@ -82,3 +82,12 @@ long lmcs(int array[], int n) {
|
|||
result = lmc(result, array[i]);
|
||||
return result;
|
||||
}
|
||||
|
||||
int strslen(char **strs) {
|
||||
int len = 0;
|
||||
for (int i = 0; strs[i] != NULL; i++)
|
||||
len++;
|
||||
|
||||
return len;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue