diff --git a/2/main.c b/2/main.c index c1434c0..d45a6ef 100644 --- a/2/main.c +++ b/2/main.c @@ -18,6 +18,8 @@ char input[] = int width = 0; int height = 0; uint64_t result = 0; +uint64_t result_2 = 0; + uint64_t parseNum(char* str, int* len){ int i = 0; @@ -81,11 +83,60 @@ void sort_ranges(uint64_t* starts, uint64_t* ends, int len){ } } +//splits ranges that go over a decimal overflow barrier into two (or if necessary more) ranges +void optimize_ranges(uint64_t* starts, uint64_t* ends, int* len){ + for(int i = 0; i<(*len); i++){ + if(numPlaces(starts[i])