I solved it using bigint, but I think, there is a way to solve it without using string. But it would be too troublesome so I didn't bother.
Since there was only one value that didn't fit into an unsigned long long ( 2^64 ), we could write a code that handles (0 - 2^64-1 ) and a flag. When the flag is on, we would know that it is 2^64.
How do we decide if the flag is on or not? Simple, we take input into a string. If the string matches with 2^64, then the flag is on. Otherwise it is off, and we can simply transfer the value from string to an unsigned long long variable using sscanf() function.
After that, using some if/else condition and handling some cases, I think it would be possible to get AC without adding or subtracting strings.