栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【蓝桥杯基础练习】第二天: ① 闰年判断 ② 01字串 ③ 字母图像 ④ 数列特征 ⑤ 查找整数

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【蓝桥杯基础练习】第二天: ① 闰年判断 ② 01字串 ③ 字母图像 ④ 数列特征 ⑤ 查找整数

BASIC-1到BASIC-5

闰年判断01字串

==【知识点】== 字母图像

==【知识点】== 数列特征

==【知识点】== 查找整数

==【知识点】==


闰年判断
'''
给定一个年份,判断这一年是不是闰年。
当以下情况之一满足时,这一年是闰年:
1. 年份是4的倍数而不是100的倍数;
2. 年份是400的倍数。
其他的年份都不是闰年。
样例输入
2013
样例输出
no
样例输入
2016
样例输出
yes
'''
a = int(input())
if (a%4==0 and a%100!=0) or a%400==0 :
    print('yes')
else :
    print('no')

01字串
'''
问题描述
对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:
00000
00001
00010
00011
00100
请按从小到大的顺序输出这32种01串。
输出格式
输出32行,按从小到大的顺序每行一个长度为5的01串。
样例输出
00000
00001
00010
00011
<以下部分省略>
'''

俩种代码的输出结果不同,第一种输出的有空格,第二种是连续输出(无空格)

for a in range(0,2):
    for b in range(0,2):
        for c in range(0, 2):
            for d in range(0, 2):
                for e in range(0, 2):
                    print(a,b,c,d,e) # 输出有空格,卧槽就离谱
for a in range(0,2):
    for b in range(0,2):
        for c in range(0,2):
            for d in range(0,2):
                for e in range(0,2):
                    print("%d%d%d%d%d" %(a,b,c,d,e)) # 标准的int输出
【知识点】

print("%d%d%d%d%d" %(a,b,c,d,e)) # 标准的int输出


字母图像
'''
问题描述
利用字母可以组成一些美丽的图形,下面给出了一个例子:
ABCDEFG
BABCDEF
CBABCDE
DCBABCD
EDCBABC
这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。
输入格式
输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。
输出格式
输出n行,每个m个字符,为你的图形。
样例输入
5 7
样例输出
ABCDEFG
BABCDEF
CBABCDE
DCBABCD
EDCBABC
'''

只有70分:

num = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','S','Y','Z']
n, m = map(int, input().split())
if n >= 1 and m <= 26:
    count = 0
    for i in range(0, n):
        s = num[0+i]
        for j in range(0,m):
            if s=='A':
                print(num[j-i], end='')
            else :
                print(s, end='')
                s = num[i-j-1]
        print(end="n")

100分通过:【一个字,绝!】

n, m = map(int, input().split())
for i in range(1, n + 1):
    for j in range(1, m + 1):
        if j == m:#每行的最后一个
            print(chr(abs(i - j) + 65), end='n')
        else:
            print(chr(abs(i - j) + 65), end='')
【知识点】

n, m = map(int, input().split()) :间隔输入abs() :取绝对值chr()和ord():ASCII表的转换函数【下方代码】

ord('a')
97
chr(97)
a

数列特征
'''
问题描述
给出n个数,找出这n个数的最大值,最小值,和。
样例输入
5
1 3 -2 4 5
样例输出
5
-2
11
'''
n = int(input())
a = list(input().split())
for i in range(0,n):
    a[i] = int(a[i])
print(max(a))
print(min(a))
print(sum(a))
【知识点】

list(input().split()):以空格的形式输入列表,但是注意转换,不然返回的是str类型最大值最小值以及和,python都自动封装了,直接调用即可


查找整数
'''
问题描述
给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。
输入格式:
第一行包含一个整数n。
第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。
第三行包含一个整数a,为待查找的数。
输出格式:
如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。
样例输入
6
1 9 4 8 3 9
9
样例输出
2
'''
n = int(input())
num = list(input().split())
a = int(input())
for i in range(0,n):
    num[i] = int(num[i])
    if a==num[i]:
        print(i+1)
        break
    elif i == n-1 :
        print(-1)
【知识点】

记得list输入要进行转化if ... elif ... else才是正规的判断语句【记得与Java,c,c++区分】


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/710913.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号