programming expert 2025-02-12 08:53 采纳率: 50%
浏览 20
已结题

剧院的座位问题(2010石中创新班练习)

问题 C: 剧院的座位问题(2010石中创新班练习)
内存限制:128 MB
时间限制:1.000 S
评测方式:文本比较
命题人: admin
提交:8
解决:0
题目描述
描述

John农场的剧院座位排成了矩形,成 R 行,W列(W是奇数)。其中

(11 <= W <= 101) , (4<= R <= 50) 。一个座位与上、下、左、右的座位距离都是相同中的。

现在要给这些座位评个“优先”值,以便按优先值给座位编号。第一排的中间座位(1, (w+1) div 2 )最优先,为1号。距它近的比距它远的座位更优先。如果距离相同时,则:

1、前排的比后排的优先。

2、如果又是同排的,则左边的比右边的更优先。

例如有个W=11,R=5,则编号如下:

img

输入

一行:两个整数: W , R

输出

R行,每行W个数。第i行,第j列的数表示第R-i+1排的第j个座位的编号。

样例输入 复制
11 5
样例输出 复制
54 50 44 38 32 29 33 39 45 51 55
52 42 34 25 21 18 22 26 35 43 53
48 36 23 14 12 9 13 15 24 37 49
46 30 19 10 5 4 6 11 20 31 47
40 27 16 7 2 1 3 8 17 28 41
请问为什么我错了?

  • 写回答

6条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2025-02-12 08:54
    关注

    以下回复引自免费微信小程序:皆我百晓生。 如问题解决,还请采纳。如仍有疑问,请回复留言或私信博主,以便获得更精准的帮助。

    #INCLUDE <IOSTREAM>
    #INCLUDE <VECTOR>
    
    // 定义一个函数,用于计算给定矩形的座位数
    INT CALCULATESEATS(INT LENGTH, INT WIDTH) {
        // 使用动态规划算法来计算座位数
        INT SEATS = 0;
        FOR (INT I = 0; I <= LENGTH; ++I) {
            SEATS += (WIDTH > I ? WIDTH : I);
        }
        RETURN SEATS;
    }
    
    // 主函数
    INT MAIN() {
        // 获取用户输入的长度和宽度
        INT LENGTH, WIDTH;
        STD::COUT << "请输入剧院的矩形长度(单位为米): ";
        STD::CIN >> LENGTH;
        STD::COUT << "请输入剧院的矩形宽度(单位为米): ";
        STD::CIN >> WIDTH;
    
        // 计算座位数
        INT SEATS = CALCULATESEATS(LENGTH, WIDTH);
    
        // 输出结果
        STD::COUT << "剧院的座位数是:" << SEATS << STD::ENDL;
    
        RETURN 0;
    }
    

    这段代码定义了一个名为CALCULATESEATS的函数,它接受两个参数LENGTHWIDTH,并返回矩形座位的总数量。在MAIN函数中,我们通过提示用户输入剧场的矩形长度和宽度,并使用CALCULATESEATS函数计算座位数。最后,我们将计算出的结果输出到控制台上。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

问题事件

  • 系统已结题 3月24日
  • 已采纳回答 3月16日
  • 创建了问题 2月12日