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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

橙白oj18训练作业1-题解、代码

發布時間:2023/12/13 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 橙白oj18训练作业1-题解、代码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

學習資料和oj如何使用加軟件官方qq群739979255

oj網址:http://oj.acm-icpc.top/

a題:原題為輸入兩個數,一行,用空格隔開,因為python操作對萌新來說略難,改為一行一個數,算出a+b。

思路:依次接收數字,注意轉換為整形(input接受為字符串),然后加起來。

a=int(input()) b=int(input()) print(a+b)

b題:輸出逆序數:

思路:利用字符串切片直接步長-1即可

print(input()[::-1])

當然,放到列表里逆序,或利用數學逆序,等等,都可以。

c題:水仙花數:

知識點一:多組數據,以零結束? ? ? ?思路:while 1不斷接受數據,每次預先判斷,是0就跳出循環

知識點二:水仙花的判斷? ? ? ? ? ? ? ? 思路:利用數學或字符串取出每一位,并取三次方,判斷并輸出即可。

字符串標準寫法:

while 1:n=input()sum=0if int(n)==0:breakelse:for i in n:sum=sum+int(i)**3if sum==int(n):print("Yes")else:print("No")

或依次取出:

while 1:a=int(input())if a==0:breakelse:b=str(a)c=int(b[0])d=int(b[1])e=int(b[2])f=(c**3)+(d**3)+(e**3)if f==a:print("Yes")if f!=a:print("No")

數學取出:

while 1:n=int(input())if n==0:breakelse:a=n%10b=n//10%10c=n//100if n==a**3+b**3+c**3:print("Yes")if n!=a**3+b**3+c**3:print("No")

稍微拓展:

春天是鮮花的季節,水仙花就是其中最迷人的代表,數學上有個水仙花數,他是這樣定義的: “水仙花數”是指一個三位數,它的各位數字的立方和等于其本身,比如:153=1^3+5^3+3^3。 現在要求輸出所有在m和n范圍內的水仙花數。

ac代碼:

m,n=[int(x) for x in input().split()] num = [] for i in range(m,n):if i==sum(int(x)**3 for x in str(i)):num.append(i) if len(num) is not 0: print(" ".join(map(str, num))) else:print("no")

d題:斐波那契:可以參考https://blog.csdn.net/hebtu666/article/details/79912328

雖然文章里寫了,我還是特別寫一下,這道題是多組輸入,先打表再接收并輸出才是最快的,不必每次都算一遍。

總結

以上是生活随笔為你收集整理的橙白oj18训练作业1-题解、代码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。