• 洛谷基础题练习5


    1. 杨辉三角

    题目描述

    给出 n(n ≤ 20),输出杨辉三角的前 n 行。

    样例输入

    6
    
    • 1

    样例输出

    1
    1 1
    1 2 1
    1 3 3 1
    1 4 6 4 1
    1 5 10 10 5 1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    #include 
    
    int main()
    {
    	int i, j, n;
    	scanf("%d", &n);
    	int a[n][n];
    	for(i=0; i<n; i++)
    	{
    		a[i][0] = 1;		// 每行第一列元素的值为1 
    		a[i][i] = 1;		// 对角线元素值为1 
    	}
    	
    	for(i=2; i<n; i++)
    	{
    		for(j=1; j<i; j++)
    		{
    			a[i][j] = a[i-1][j-1] + a[i-1][j];  // 值为上一行同列和前一列两个数之和
    		}
    	}
    	
    	for(i=0; i<n; i++)
    	{
    		for(j=0; j<=i; j++)
    		{
    		    if (j != i)
    			    printf("%d ", a[i][j]);
    			else
    			    printf("%d", a[i][j]);
    		}
    		printf("\n");
    	}
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34

    2. 自动修正

    题目描述

    输入一个长度不超过 100 且不包括空格的字符串。要求将该字符串中的所有小写字母变成大写字母并输出。

    输入格式

    输入一行,一个字符串。

    输出格式

    输出一个字符串,即将原字符串中的所有小写字母转化为大写字母。

    样例输入

    Luogu4!
    
    • 1

    样例输出

    LUOGU4!
    
    • 1
    str1 = input().strip()
    print(str1.upper())
    
    • 1
    • 2

    3. 闰年展示

    题目描述

    输入 x,y(1582 ≤ x < y ≤ 3000),输出 [x,y] 区间中闰年个数,并在下一行输出所有闰年年份数字,使用空格隔开。

    输入格式

    输入两个正整数 x,y,以空格隔开。

    输出格式

    第一行输出一个正整数,表示 [x,y] 区间中闰年个数。

    第二行输出若干个正整数,按照年份单调递增的顺序输出所有闰年年份数字。

    样例输入

    1989 2001
    
    • 1

    样例输出

    3
    1992 1996 2000
    
    • 1
    • 2
    def is_leap(year):
        """判断是否是闰年"""
        if (year % 400 == 0) or (year % 4 == 0 and year % 100 != 0):
            return True
        else:
            return False
    
    
    x, y = map(int, input().strip().split())
    if 1582 <= x < y <= 3000:
        count = 0
        leap_years = []
        for year in range(x, y+1):
            if is_leap(year):
                count += 1
                leap_years.append(year)
        print(count)
        print(' '.join(map(str, leap_years)))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    4. 猴子吃桃

    题目描述

    一只小猴买了若干个桃子。第一天他刚好吃了这些桃子的一半,又贪嘴多吃了一个;接下来的每一天它都会吃剩余的桃子的一半外加一个。第 n 天早上起来一看,只剩下 1 个桃子了。请问小猴买了几个桃子?

    输入格式

    输入一个正整数 n(1 ≤ n ≤ 20),表示天数。

    输出格式

    输出小猴买了多少个桃子。

    样例输入

    4
    
    • 1

    样例输出

    22
    
    • 1
    n = int(input())
    ans = 1
    while n > 1:
        ans = (ans + 1) * 2
        n -= 1
    print(ans)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    5. 培训

    题目描述

    某培训机构的学员有如下信息:

    • 姓名(字符串)
    • 年龄(周岁,整数)
    • 去年 NOIP 成绩(整数,且保证是 5 的倍数)

    经过为期一年的培训,所有同学的成绩都有所提高,提升了 20%(当然 NOIP 满分是 600 分,不能超过这个得分)。

    输入学员信息,请设计一个结构体储存这些学生信息,并设计一个函数模拟培训过程,其参数是这样的结构体类型,返回同样的结构体类型,并输出学员信息。

    输入格式

    第一行输入一个正整数 n(1≤n≤5),表示学员个数。

    第二行开始往下 n n n 行。每行首先是一个字符串表示学员姓名,再是一个整数表示学员年龄(年龄为 0∼100(含 0 与 100)的整数),再是一个整数为去年 NOIP 成绩(0∼600(含 0 与 600)的 5 的整倍数)。

    输出格式

    输出 n 行,每行首先输出一个字符串表示学生姓名,再往后两个整数,表示经过一年的培训后学员的年龄和他们今年的 NOIP 成绩。以空格隔开。

    样例输入

    3
    kkksc03 24 0
    chen_zhe 14 400
    nzhtl1477 18 590
    
    • 1
    • 2
    • 3
    • 4

    样例输出

    kkksc03 25 0
    chen_zhe 15 480
    nzhtl1477 19 600
    
    • 1
    • 2
    • 3
    #include 
    
    typedef struct Student
    {
    	char name[20];   // 姓名 
    	int age;		 // 年龄 
    	int score;		 // 成绩 
    };
    
    int main()
    {
    	int n;
    	scanf("%d", &n);
    	struct Student stu[n];
    	int i;
    	for (i=0; i<n; i++)
    	{
    		scanf("%s %d %d", &stu[i].name, &stu[i].age, &stu[i].score);
    	}
    	for (i=0; i<n; i++)
    	{
    		stu[i].age += 1;
    		stu[i].score *= 1.2;
    		if (stu[i].score > 600)
    			stu[i].score = 600;
    		printf("%s %d %d\n", stu[i].name, stu[i].age, stu[i].score);
    	}
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
  • 相关阅读:
    数据结构HW2
    mmdetection3d简单安装(官方教程就是坑)
    SAP-PP:基础概念笔记-5(物料主数据的MRP1~4视图)
    Spring Boot复用yaml文件
    angr初探
    CloudCompare 二次开发(19)——三维点云边界提取
    借PVE8.0的Debian 12系统配置一下NFS服务器
    【Linux】页表讲解(一级、二级) 和 vm_area_struct ## 对于我前面博客内容的补充
    风雨秋招路-CV太难了-记得复盘
    【Netty】九、Netty自定义协议
  • 原文地址:https://blog.csdn.net/username666/article/details/127131522