蓝桥杯-纸张尺寸

举报
别团等shy哥发育 发表于 2023/04/04 22:59:19 2023/04/04
【摘要】 @toc 1、问题描述在 ISO 国际标准中定义了 A0 纸张的大小为 1189mm ×× 841mm, 将 A0 纸 沿长边对折后为 A1 纸, 大小为 841mm ×× 594mm, 在对折的过程中长度直接取 下整 (实际裁剪时可能有损耗)。将 A1 纸沿长边对折后为 A2 纸, 依此类推。输入纸张的名称, 请输出纸张的大小。 2、输入格式输入一行包含一个字符串表示纸张的名称, 该名称一...

@toc

1、问题描述

在 ISO 国际标准中定义了 A0 纸张的大小为 1189mm ×× 841mm, 将 A0 纸 沿长边对折后为 A1 纸, 大小为 841mm ×× 594mm, 在对折的过程中长度直接取 下整 (实际裁剪时可能有损耗)。将 A1 纸沿长边对折后为 A2 纸, 依此类推。

输入纸张的名称, 请输出纸张的大小。

2、输入格式

输入一行包含一个字符串表示纸张的名称, 该名称一定是 A0、A1、A2、 A3、A4、A5、A6、A7、A8、A9 之一。

3、输出格式

输出两行,每行包含一个整数,依次表示长边和短边的长度。

4、样例输入和输出

样例输入1

A0

样例输出1

1189
841

样例输入 2

A1

样例输出 2

841
594

5、解题思路

A0对折0此,A1对折1此,每次A后面的数字就是我们对折的次数,可以当作循环的判断条件。

这个题感觉太简单了,就纸张有长边longSide和短边shortSide,每次沿着长边对折,那么长边的边长减半就行,但是每次对折之后需要将长边和短边的长度进行比较,将数值较大的赋值为longSide,将数值较小的赋值给shortSide

题目要求先输出长边再输出短边,其实这里都可以不用管,最后结果将longSideshortSide中较大的先输出、较小的后输出就行。

6、代码实现

public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String s = scan.next();
        int n = Integer.parseInt(String.valueOf(s.charAt(1)));
        int a = 1189;
        int b = 841;
        if (n == 0) {
            System.out.println(a);
            System.out.println(b);
        } else {
            int longSide = Math.max(a, b); //长边
            int shortSide = Math.min(a, b);//短边
            for (int i = 0; i < n; i++) {
                if (longSide < shortSide) {
                    int temp = longSide;
                    longSide = shortSide;
                    shortSide = temp;
                }
                longSide /= 2;
            }
            System.out.println(Math.max(longSide, shortSide));
            System.out.println(Math.min(longSide, shortSide));
        }
        scan.close();
    }
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。