根據題目先得到幾個重點:
1.轉過的台數不會超過50台
2.轉到底(99台),再轉會回到開頭(0台)
3.(-1,-1)代表結束
根據重點的解題思路如下:
1.根據重點1、2,轉超過50台,可以用減回去的 例:12 --> 98,可以用(100-98)+12
2.先把大數排在前面,方便後面計算
3.遇到(-1,-1)直接return 0
---------------------------------------------------------------------------------------
解答:
#include <iostream>
using namespace std;
int main()
{
int i,n,t;
while(cin >> i >> n)
{
if(i-n>0)
{
t=n;
n=i;
i=t;
if(n-i>50)
cout << (100-n)+i << endl;
else
cout << n-i << endl;
}
else if(i==(-1) && n==(-1))
return 0;
else if(i==n)
{
cout << "0" << endl;
}
else
{
if(n-i>50)
cout << (100-n)+i << endl;
else
cout << n-i << endl;
}
}
return 0;
}