日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

蓝桥杯基础练习1-15(python)

發(fā)布時(shí)間:2025/3/12 python 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 蓝桥杯基础练习1-15(python) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

BASIC-1 閏年判斷

問題描述
給定一個(gè)年份,判斷這一年是不是閏年。

當(dāng)以下情況之一滿足時(shí),這一年是閏年:

  • 年份是4的倍數(shù)而不是100的倍數(shù);
  • 年份是400的倍數(shù)。
  • 其他的年份都不是閏年。

    輸入格式
    輸入包含一個(gè)整數(shù)y,表示當(dāng)前的年份。
    輸出格式
    輸出一行,如果給定的年份是閏年,則輸出yes,否則輸出no。

    def isr(y):if y%4 ==0 and y%100 != 0 or y%400 == 0:return 1return 0y=int(input()) print('yes' if isr(y) else 'no')

    BASIC-2 01字串

    問題描述
    對(duì)于長(zhǎng)度為5位的一個(gè)01串,每一位都可能是0或1,一共有32種可能。它們的前幾個(gè)是:
    00000
    00001
    00010
    00011
    00100
    請(qǐng)按從小到大的順序輸出這32種01串。

    輸入格式
    本試題沒有輸入。
    輸出格式
    輸出32行,按從小到大的順序每行一個(gè)長(zhǎng)度為5的01串。

    for i in range(32):print('{:0>5d}'.format(int('{:b}'.format(i))))

    BASIC-3 字母圖形

    問題描述

    利用字母可以組成一些美麗的圖形,下面給出了一個(gè)例子:

    ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC

    這是一個(gè)5行7列的圖形,請(qǐng)找出這個(gè)圖形的規(guī)律,并輸出一個(gè)n行m列的圖形。

    輸入格式

    輸入一行,包含兩個(gè)整數(shù)n和m,分別表示你要輸出的圖形的行數(shù)的列數(shù)。

    輸出格式

    輸出n行,每個(gè)m個(gè)字符,為你的圖形。

    n,m=map(int,input().split()) for i in range(n):for j in range(m):if i<=j :print(chr(ord('A')+j-i),end='')else :print(chr(ord('A')+i-j),end='')print()

    BASIC-4 數(shù)列特征

    問題描述

    給出n個(gè)數(shù),找出這n個(gè)數(shù)的最大值,最小值,和。

    輸入格式

    第一行為整數(shù)n,表示數(shù)的個(gè)數(shù)。

    第二行有n個(gè)數(shù),為給定的n個(gè)數(shù),每個(gè)數(shù)的絕對(duì)值都小于10000。

    輸出格式

    輸出三行,每行一個(gè)整數(shù)。第一行表示這些數(shù)中的最大值,第二行表示這些數(shù)中的最小值,第三行表示這些數(shù)的和。

    n = int(input()) arr = input().split() print(max(int(arr[i]) for i in range(n))) print(min(int(arr[i]) for i in range(n))) print(sum(int(arr[i]) for i in range(n)))

    BASIC-5 查找整數(shù)

    問題描述

    給出一個(gè)包含n個(gè)整數(shù)的數(shù)列,問整數(shù)a在數(shù)列中的第一次出現(xiàn)是第幾個(gè)。

    輸入格式

    第一行包含一個(gè)整數(shù)n。

    第二行包含n個(gè)非負(fù)整數(shù),為給定的數(shù)列,數(shù)列中的每個(gè)數(shù)都不大于10000。

    第三行包含一個(gè)整數(shù)a,為待查找的數(shù)。

    輸出格式

    如果a在數(shù)列中出現(xiàn)了,輸出它第一次出現(xiàn)的位置(位置從1開始編號(hào)),否則輸出-1。

    n = int(input()) l = input().split() a = input() i=0 while i<n:if a == l[i]:print(i+1)breaki = i+1if i == n:print(-1)

    BASIC-6 楊輝三角形

    問題描述

    楊輝三角形又稱Pascal三角形,它的第i+1行是(a+b)i的展開式的系數(shù)。

    它的一個(gè)重要性質(zhì)是:三角形中的每個(gè)數(shù)字等于它兩肩上的數(shù)字相加。

    下面給出了楊輝三角形的前4行:

    1

    1 1

    1 2 1

    1 3 3 1

    給出n,輸出它的前n行。

    輸入格式

    輸入包含一個(gè)數(shù)n。

    輸出格式

    輸出楊輝三角形的前n行。每一行從這一行的第一個(gè)數(shù)開始依次輸出,中間使用一個(gè)空格分隔。請(qǐng)不要在前面輸出多余的空格。

    n = int(input()) l=[[0 for i in range(n)] for i in range(n)]l[0][0] = 1for i in range(n):l[i][0]=1for i in range(n):for j in range(i+1):if(j>=1):l[i][j]=l[i-1][j]+l[i-1][j-1]print(l[i][j],end=' ')print()

    BASIC-7 特殊的數(shù)字

    問題描述

    153是一個(gè)非常特殊的數(shù),它等于它的每位數(shù)字的立方和,即153=111+555+333。編程求所有滿足這種條件的三位十進(jìn)制數(shù)。

    輸出格式

    按從小到大的順序輸出滿足條件的三位十進(jìn)制數(shù),每個(gè)數(shù)占一行。

    for i in range(10):for j in range(10):for k in range(10):a=pow(i,3) +pow(k,3)+pow(j,3)if a>=100 and a<=999 and a==i*100+j*10+k*1:print(a)

    BASIC-8 回文數(shù)

    問題描述

    1221是一個(gè)非常特殊的數(shù),它從左邊讀和從右邊讀是一樣的,編程求所有這樣的四位十進(jìn)制數(shù)。

    輸出格式

    按從小到大的順序輸出滿足條件的四位十進(jìn)制數(shù)。

    for i in range(9):for j in range(10):print("%d%d%d%d" % (i+1,j,j,i+1))

    BASIC-9 特殊回文數(shù)

    問題描述

    123321是一個(gè)非常特殊的數(shù),它從左邊讀和從右邊讀是一樣的。
      輸入一個(gè)正整數(shù)n, 編程求所有這樣的五位和六位十進(jìn)制數(shù),滿足各位數(shù)字之和等于n 。

    輸入格式

    輸入一行,包含一個(gè)正整數(shù)n。

    輸出格式

    按從小到大的順序輸出滿足條件的整數(shù),每個(gè)整數(shù)占一行。

    n = int(input())#先輸出5位 for i in range(9):for j in range(10):k=n-(i+1)*2-j*2if k>=0 and k<=9:print('%d%d%d%d%d' % (i+1,j,k,j,i+1)) #再輸出六位 for i in range(9):for j in range(10):for l in range(10):if(n==(i+1+j+l)*2):print('%d%d%d%d%d%d' % (i+1,j,l,l,j,i+1))

    BASIC-10 十進(jìn)制轉(zhuǎn)十六進(jìn)制

    問題描述

    十六進(jìn)制數(shù)是在程序設(shè)計(jì)時(shí)經(jīng)常要使用到的一種整數(shù)的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16個(gè)符號(hào),分別表示十進(jìn)制數(shù)的0至15。十六進(jìn)制的計(jì)數(shù)方法是滿16進(jìn)1,所以十進(jìn)制數(shù)16在十六進(jìn)制中是10,而十進(jìn)制的17在十六進(jìn)制中是11,以此類推,十進(jìn)制的30在十六進(jìn)制中是1E。
      給出一個(gè)非負(fù)整數(shù),將它表示成十六進(jìn)制的形式。

    輸入格式

    輸入包含一個(gè)非負(fù)整數(shù)a,表示要轉(zhuǎn)換的數(shù)。0<=a<=2147483647

    輸出格式

    輸出這個(gè)整數(shù)的16進(jìn)制表示

    a=int(input()) print('{:X}'.format(a)) #方法2: n = int(input()) print(format(n, 'X')) # X 輸出字母為大寫

    BASIC-11 十六進(jìn)制轉(zhuǎn)十進(jìn)制

    問題描述

    從鍵盤輸入一個(gè)不超過8位的正的十六進(jìn)制數(shù)字符串,將它轉(zhuǎn)換為正的十進(jìn)制數(shù)后輸出。
      注:十六進(jìn)制數(shù)中的10~15分別用大寫的英文字母A、B、C、D、E、F表示。

    樣例輸入

    FFFF

    樣例輸出

    65535

    a=input() print(int(a,16))

    BASIC-12 十六進(jìn)制轉(zhuǎn)八進(jìn)制

    問題描述
      給定n個(gè)十六進(jìn)制正整數(shù),輸出它們對(duì)應(yīng)的八進(jìn)制數(shù)。

    輸入格式
      輸入的第一行為一個(gè)正整數(shù)n (1<=n<=10)。
      接下來n行,每行一個(gè)由09、大寫字母AF組成的字符串,表示要轉(zhuǎn)換的十六進(jìn)制正整數(shù),每個(gè)十六進(jìn)制數(shù)長(zhǎng)度不超過100000。

    輸出格式
      輸出n行,每行為輸入對(duì)應(yīng)的八進(jìn)制正整數(shù)。

    【注意
      輸入的十六進(jìn)制數(shù)不會(huì)有前導(dǎo)0,比如012A。
      輸出的八進(jìn)制數(shù)也不能有前導(dǎo)0。

    n=int(input()) for i in range(n):a = input()print(format(int(a, 16), 'o'))

    BASIC-13 數(shù)列排序

    問題描述

    給定一個(gè)長(zhǎng)度為n的數(shù)列,將這個(gè)數(shù)列按從小到大的順序排列。1<=n<=200

    輸入格式

    第一行為一個(gè)整數(shù)n。
      第二行包含n個(gè)整數(shù),為待排序的數(shù),每個(gè)整數(shù)的絕對(duì)值小于10000。

    輸出格式

    輸出一行,按從小到大的順序輸出排序后的數(shù)列。

    n = int(input()) a = list(map(int,input().split())) a.sort() for i in range(n):if i!=n:print(a[i],end=' ')else:print(a[i],end='')

    BASIC-14 時(shí)間轉(zhuǎn)換

    問題描述

    給定一個(gè)以秒為單位的時(shí)間t,要求用“ < H> :< M>: < S>”的格式來表示這個(gè)時(shí)間。< H >表示時(shí)間,< M>表示分鐘,而< S>表示秒,它們都是整數(shù)且沒有前導(dǎo)的“0”。例如,若t=0,則應(yīng)輸出是“0:0:0”;若t=3661,則輸出“1:1:1”。

    輸入格式

    輸入只有一行,是一個(gè)整數(shù)t(0<=t<=86399)。

    輸出格式

    輸出只有一行,是以“< H>:< M>:< S>”的格式所表示的時(shí)間,不包括引號(hào)。

    n = int(input()) a=int(n/3600) b=int((n-a*3600)/60) c=int(n-a*3600-b*60) print('%d:%d:%d' % (a,b,c))

    BASIC-15 字符串對(duì)比

    問題描述

    給定兩個(gè)僅由大寫字母或小寫字母組成的字符串(長(zhǎng)度介于1到10之間),它們之間的關(guān)系是以下4中情況之一:
      1:兩個(gè)字符串長(zhǎng)度不等。比如 Beijing 和 Hebei
      2:兩個(gè)字符串不僅長(zhǎng)度相等,而且相應(yīng)位置上的字符完全一致(區(qū)分大小寫),比如 Beijing 和 Beijing
      3:兩個(gè)字符串長(zhǎng)度相等,相應(yīng)位置上的字符僅在不區(qū)分大小寫的前提下才能達(dá)到完全一致(也就是說,它并不滿足情況2)。比如 beijing 和 BEIjing
      4:兩個(gè)字符串長(zhǎng)度相等,但是即使是不區(qū)分大小寫也不能使這兩個(gè)字符串一致。比如 Beijing 和 Nanjing
      編程判斷輸入的兩個(gè)字符串之間的關(guān)系屬于這四類中的哪一類,給出所屬的類的編號(hào)。

    輸入格式

    包括兩行,每行都是一個(gè)字符串

    輸出格式

    僅有一個(gè)數(shù)字,表明這兩個(gè)字符串的關(guān)系編號(hào)

    a=input() b=input() if len(a) != len(b):print(1) elif a==b:print(2) elif a.lower()==b.lower():print(3) else:print(4)

    總結(jié)

    以上是生活随笔為你收集整理的蓝桥杯基础练习1-15(python)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。