PTA 7-205 板凳鏊子三十三
分数 10
作者 庄波
单位 滨州学院
说:板凳、鏊子三十三,一百条腿儿朝天。问:板凳、鏊子各有几个?
板凳,木板面、无靠背的坐具,多为狭长形,通常为四条腿。
鏊子是一种从远古相传的制作面食的工具,是河南,苏北,山东地区用来做煎饼美食的工具。传统的鏊子由生铁制成,有三条腿。
现有板凳和鏊子总计三十三个,若给定两者腿儿的总数 n,编程求出板凳和鏊子的数量(最少数量为 1 个)。
输入格式:
一个正整数 n,表示板凳腿儿和鏊子腿儿的总数。
输出格式:
若有解,输出两个正整数,第一个是板凳的数量,第二个是鏊子的数量,中间用一个空格隔开。
若无解,则输出 Unsolvable。
输入样例1:
100
输出样例1:
bandeng = 1, aozi = 32
输入样例2:
99
输出样例2:
Unsolvable
输入样例3:
132
输出样例3:
Unsolvable
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include <stdio.h>
#include <math.h>
int main(){
// 鏊子3条腿;板凳4条腿;鏊子和板凳一共33个;鏊子和板凳腿的总数为integer
int integer; //正整数
int bandeng, aozi;
int count = 0; //记录解的个数
scanf("%d", &integer);
for(bandeng = 1; bandeng < 33; bandeng++){ //循环板凳个数
aozi = 33 - bandeng; //鏊子个数
if(bandeng + aozi == 33 && (4 * bandeng + 3 * aozi == integer)){
//板凳和鏊子总数为33;总腿数为integer
printf("bandeng = %d, aozi = %d\n", bandeng, aozi);
count++; //记录解的个数
}
}
if(count == 0) //若无解
printf("Unsolvable");
return 0;
}
解题思路:
step1:审题,找出有用的信息
step2:循环板凳个数并算出鏊子个数
step3:判断条件(板凳和鏊子总数为33;总腿数为integer)若满足这个条件就输出并记录个数
step4:判断是否有解,若无解就输出 “Unsolvable”
归属知识点:
条件判断
循环结构