题目描述
FJ的三头奶牛:Bessie,Elsie,和Mildred总是徘徊在农场的远处!FJ需要你的帮助将它们移到理想的位置。
FJ农场很长而且很窄,我们可以认为它像一条数轴,奶牛可以占据任何整数位置,但每个位置最多只能有1头奶牛。
这3头奶牛目前位于不同的整数位置,FJ想要移动他们,使得它们占据三个连续的位置(例如 6,7,8)。
因为牛很懒,FJ很难移动它们。只有当一头牛不处于另两头牛中间,FJ才可以移动这头牛,
当FJ移动一头奶牛时,他可以让这头奶牛去任意一个位置,只要在这个位置这头奶牛处于另两头奶牛中间。
这样,奶牛会越靠越近。
求最少和最多的移动次数
#include <stdio.h>
int main() {
int a, b, c;
int gap_1, gap_2;
scanf("%d %d %d", &a, &b, &c);
gap_1 = b - a - 1;
gap_2 = c - b - 1;
int t = gap_1 - gap_2;
if (gap_1 == 0 && gap_2 == 0)
printf("0\n0\n");
else if (gap_1 == 1 || gap_2 == 1) {
printf("1\n");
if (t > 0)
printf("%d", gap_1);
else
printf("%d", gap_1);
}
else {
printf("2\n");
if (t > 0)
printf("%d", gap_1);
else
printf("%d", gap_2);
}
return 0;
}