解题思路 :就是一个开锁的过程一定要记录下来,而且每一次开锁都要按照最小度数转动到下一个数字上面。
简单的说 :水题。
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<iostream>
using namespace std;
int foo(int a,int b){
int temp;
if(a > b){
a = a^b;
b = a^b;
a = a^b;
}
return (a+40-b < b-a ? a+40-b : b-a)*9;
}
int main( void ){
int n,first,mid,last;
while(scanf("%d%d%d%d",&n,&first,&mid,&last) != EOF){
if(!n && !first && !mid && !last){
break;
}
int sum = 0;
sum += foo(n,first);
sum += foo(first,mid);
sum += foo(mid,last);
sum += (720 + 360);
printf("%d\n",sum);
}
return 0;
}