本文主要是介绍7-22 龟兔赛跑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目链接:7-22 龟兔赛跑
一. 题目
1. 题目
2. 输入输出格式
3. 输入输出样例
4. 限制
二、代码
1. 代码实现
#include <stdio.h>// 递归计算兔子和乌龟跑的路程(可改为while循环)
void rabbitRun(unsigned int minute, unsigned int *rabbit, unsigned int *gui) {if (*rabbit > *gui) { // 兔子发现自己超过乌龟// 以30分钟为分界点,兔子每次睡30分钟if (minute <= 30) {*gui += minute * 3; // 乌龟跑完剩余时间minute = 0; // 时间清零} else {*gui += 30 * 3; // 乌龟跑30分钟minute -= 30; // 剩余时间减30分钟}} else { // 兔子发现自己没有超过乌龟// 以10分钟为分界点,兔子每跑10分钟看一次if (minute <= 10) {*rabbit += minute * 9; *gui += minute * 3;minute = 0; // 时间清零} else {*rabbit += 10 * 9;*gui += 10 * 3;minute -= 10; // 时间减10分钟}}if (minute != 0) { // 递归,进入下一次判断rabbitRun(minute, rabbit, gui);}
}int main(void) {unsigned int minute, rabbit, gui;if (scanf("%d", &minute) != 1) {return -1;}rabbit = gui = 0;rabbitRun (minute, &rabbit, &gui); // 计算路程if (rabbit > gui) {printf ("^_^ %d", rabbit);} else if (rabbit < gui) {printf ("@_@ %d", gui);} else {printf ("-_- %d", gui);}return 0;
}
2. 提交结果
这篇关于7-22 龟兔赛跑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!