rpkv
August 30, 2019, 6:56pm
1
My code is running successfully for 5 testcases but it is failing for others. I have done the same thing as mentioned in the editorial using segment trees. Please provide any test case that my code might be failing. I have been stuck on this problem for days now and any help would be appreciated.
Problem Link: HMAPPY1 Problem - CodeChef
Solution link : CodeChef: Practical coding for everyone
ssjgz
August 30, 2019, 7:01pm
2
That solution still seems to be failing the testcase I sent you yesterday(?)
Edit:
Here’s a slightly smaller, and more striking, version:
4 28 2
1 1 0 0
?!?!?!?!?!?!?!?!?!?!?!?!?!?!
2 Likes
rpkv
August 30, 2019, 7:37pm
3
The code is working fine for the given test case
OUTPUT (For my code) :-
2
2
2
1
2
2
2
2
1
2
2
2
2
1
Thanks for replying though !
ssjgz
August 30, 2019, 7:45pm
4
Perhaps I’m misunderstanding the question, but I get (added in some diagnostics :)):
Testcase Run
Processing query # 1 A is currently:
1 1 0 0
Query: ?
maxNum1sInRun: 2
Processing query # 2 A is currently:
1 1 0 0
Query: ! - right-circular shift on a; result is:
0 1 1 0
Processing query # 3 A is currently:
0 1 1 0
Query: ?
maxNum1sInRun: 2
Processing query # 4 A is currently:
0 1 1 0
Query: ! - right-circular shift on a; result is:
0 0 1 1
Processing query # 5 A is currently:
0 0 1 1
Query: ?
maxNum1sInRun: 2
Processing query # 6 A is currently:
0 0 1 1
Query: ! - right-circular shift on a; result is:
1 0 0 1
Processing query # 7 A is currently:
1 0 0 1
Query: ?
maxNum1sInRun: 1
Processing query # 8 A is currently:
1 0 0 1
Query: ! - right-circular shift on a; result is:
1 1 0 0
Processing query # 9 A is currently:
1 1 0 0
Query: ?
maxNum1sInRun: 2
Processing query # 10 A is currently:
1 1 0 0
Query: ! - right-circular shift on a; result is:
0 1 1 0
Processing query # 11 A is currently:
0 1 1 0
Query: ?
maxNum1sInRun: 2
Processing query # 12 A is currently:
0 1 1 0
Query: ! - right-circular shift on a; result is:
0 0 1 1
Processing query # 13 A is currently:
0 0 1 1
Query: ?
maxNum1sInRun: 2
Processing query # 14 A is currently:
0 0 1 1
Query: ! - right-circular shift on a; result is:
1 0 0 1
Processing query # 15 A is currently:
1 0 0 1
Query: ?
maxNum1sInRun: 1
Processing query # 16 A is currently:
1 0 0 1
Query: ! - right-circular shift on a; result is:
1 1 0 0
Processing query # 17 A is currently:
1 1 0 0
Query: ?
maxNum1sInRun: 2
Processing query # 18 A is currently:
1 1 0 0
Query: ! - right-circular shift on a; result is:
0 1 1 0
Processing query # 19 A is currently:
0 1 1 0
Query: ?
maxNum1sInRun: 2
Processing query # 20 A is currently:
0 1 1 0
Query: ! - right-circular shift on a; result is:
0 0 1 1
Processing query # 21 A is currently:
0 0 1 1
Query: ?
maxNum1sInRun: 2
Processing query # 22 A is currently:
0 0 1 1
Query: ! - right-circular shift on a; result is:
1 0 0 1
Processing query # 23 A is currently:
1 0 0 1
Query: ?
maxNum1sInRun: 1
Processing query # 24 A is currently:
1 0 0 1
Query: ! - right-circular shift on a; result is:
1 1 0 0
Processing query # 25 A is currently:
1 1 0 0
Query: ?
maxNum1sInRun: 2
Processing query # 26 A is currently:
1 1 0 0
Query: ! - right-circular shift on a; result is:
0 1 1 0
Processing query # 27 A is currently:
0 1 1 0
Query: ?
maxNum1sInRun: 2
Processing query # 28 A is currently:
0 1 1 0
Query: ! - right-circular shift on a; result is:
0 0 1 1
2
2
2
1
2
2
2
1
2
2
2
1
2
2
1 Like
rpkv
August 30, 2019, 8:05pm
7
Finally got the AC after two very frustrating days ! Thanks again for being there for beginners !
1 Like
ssjgz
August 30, 2019, 8:06pm
8
Glad you got it sorted It’s a good habit to get into to
a) Write a naive, brute-force solution (usually very easy); and
b) assert
that your optimised solution matches the brute force one; and
c) Write a random testcase generator; and
d) Keep throwing random testcases at your solution until you find one where the optimised and brute-force solutions don’t match.
This is (roughly) how I found those testcases
3 Likes