I've written a program to generate the first few terms of arithmetic progressions. I've noticed something odd though, there's always one wrong term. Surely, there couldn't be a bug in my code, could it?
Can you tell me the position of the wrong term, and return the correct sequence?
For example, given
errorsequence = [2 4 7 8 10]; %arithmetic sequence starting at 2 with increment 2
then
errorposition = 3; truesequence = [2 4 6 8 10];
input => errorsequence = [10 20 21 40]
output => truesequence = [19 20 21 22] , errorposition = [1 4]
Result: Test fail
It took me a while to figure this one out. Your mathmatical intuition and ability of code implementation keep stunning me. The solution really a mind blower. Bravo!
Note that this will fail on a short sequence e.g. [10 20 21 40]
I believe changing mode to median should work in all non-ambiguous cases (length>3)
2724 Solvers
What is the distance from point P(x,y) to the line Ax + By + C = 0?
209 Solvers
Cell Counting: How Many Draws?
254 Solvers
203 Solvers
311 Solvers