3236:练39.1 书香阁座位时间限制: 1000 ms 内存限制: 65536 KB 提交数: 4396 通过数: 2817 【题目描述】风之巅小学的书香阁有312312个座位,已知第一排有1515个座位,以后每排比上一排增加22个座位,最后一排有几个座位?一共有几排? 试编一程序算一算。 【输入】无。 【输出】对于倒数第二行,输出最后一排的座位数。 对于最后一行,输出排数。 【输入样例】无 【输出样例】最后一排的座位数:37
排数:12 |
#include <iostream>
using namespace std;
int main() {
int totalSeats = 312;
int firstRowSeats = 15;
int increment = 2;
// 使用等差数列求和公式反推排数
int n = 0;
for (n = 1; ; n++) {
if ((n * (2 * firstRowSeats + (n - 1) * increment)) / 2 == totalSeats) {
break;
}
}
// 计算最后一排的座位数
int lastRowSeats = firstRowSeats + (n - 1) * increment;
// 输出结果
cout << "最后一排的座位数:" << lastRowSeats << endl;
cout << "排数:" << n << endl;
return 0;
}