Wow. this is one of the reasons I hated school. No programmatic reason what given for why a string solution couldnt be used, only an arbitrary reason. Here students may have knowledge from self teaching or whatever, but they are unallowed to use that knowledge because "reasons".
To any teacher that thinks its a good idea to punish students for thinking outside the box: shame on you. All youre going to end up doing is crushing enthusiasm and/or creating drones. Please dont.
I'd just picked up python and was having so much fun going through the project Euler problems.
I can't remember which question it was for but we had to know the length of an integer. At that point I hadn't learnt about type conversion so had to implement it the way the author wants his students to do it.
I remember fondly as well that I hadn't learnt about the modulo operator and had to implement that by myself as well.
I couldn't believe it when I got the answer and progressed to the forum where others shared their answers and they were doing it on one line with %!
Good times!