Hello CodeForces. I wrote this code for today's problem A and it got AC. I want to know how this got AC with big mistake in input:
scanf("%lld", &n);
cin >> s;
However, input should be only line contains string. Why scanf is ignored? This works locally on my computer you can check in your pc.
Thanks in advance.
Q and A are not digits and you are not checking result of scanf.
It ain't a mystery. Scanf does not find a match for specified format
%lld
. If you look at the return value of this line, you'll see it's 0 — number of matches found. If there's no match, no variable will be assigned. Nothing bad happens and it's totally expectable.So, scanf is not ignored, but assignment is ignored, because no matches for
%lld
were found.