原题链接:B - リモコン
题目大意:
空调可以上调或下调1、5、10度。
小明想将空调温度从x度调到y度,求最小的操作次数。
本题数据量较小,用搜索强行搜出答案也无妨,但是用思维方法则会更加简单。
首先,我们需要取一下x-y的绝对值,然后在这个数大于10的时候我们肯定是要对空调加减10度这点肯定无疑,当加减到小于10度时,我们就需要考虑1-9每一个数子需要操作的最小次数,其实并不难找,最后的规律是1,2,3,2,1,2,3,3,2。
代码实现:
#include<bits/stdc++.h>
using namespace std;
int a[10]={1,2,3,2,1,2,3,3,2};
int main()
{
int x,y,ans=0;
cin>>x>>y;
int cnt=abs(x-y);
ans+=cnt/10;
cnt=cnt%10;
ans+=a[cnt-1];
cout<<ans<<endl;
return 0;
}