python學習day02作業第一部分

1. (數組Max)

  • 題目描述:

請設計一個高效算法,查找數組中未出現的最小正整數。
給定數組的大小n和整數數組A,請返回數組中未出現的最小正整數。保證數組大小小於等於500。

  • 測試樣例:
    • 輸入: 4 -1 2 3 4
    • 輸出: 1 代碼:

代碼:
從1 開始找,第一個沒有出現的正整數就是最小的

s = raw_input("please input Num:")
 s = s.split()
 Num = 1
 if len(s) > 500:
     print "The most of Num is 500!!!"
     exit()
 for i in range(0, len(s)):
     for i1 in s:
         if i1.startswith("-"):
             s.remove(s[s.index(i1)])
             s = s
 if min(s) != "1":
     print "The Min Num:1"
     exit()
 for i3 in range(0,len(s)):
     if str(Num) in s:
         Num += 1
         i3 = 0
 print "The Min Num:%d" % (Num)

2. (華爲-字符集合)

  • 題目描述:
    輸入一個字符串,求出該字符串包含的字符集合
  • 輸入描述:
    每組數據輸入一個字符串,字符串最大長度爲100,且只包含字母,不可能爲空串,區分大小寫。
  • 輸出描述:
    每組數據一行,按字符串原有的字符順序,輸出字符集合,即重複出現並靠後的字母不輸出。

  • 示例1:

    • 輸入:
      abcqweracb
    • 輸出:
      abcqwer
      代碼:
 s = raw_input("請輸入:")
 li = (list(s))
 if len(s) > 100:
     print "The max length of the string is 100!!"
 for i in s:
     if i == " " or not i.isalpha():
         print "只能輸入數字!!!"
         exit()
 for i1 in range(len(s)):
     for i2 in range(i1 + 1, len(s)):
         if li[i1] == li[i2]:
             li[i2] = " "
 print (" ".join(li)).replace(" ", "")

3 給定一個正整數,編寫程序計算有多少個質數(0~輸入的整數之間)。輸入值小於1000.
代碼

count = 0
max = input("請輸入最大值:")
for num in range(0,max+1):
    if num>1:
        for i in range(2,num):
            if (num % i) == 0:
            break
            count += 1
    else:
        print num
  1. (2017-小米-句子反轉)

    • 題目描述:

      給定一個句子(只包含字母和空格), 將句子中的單詞位置反轉,單詞用空格分割, 單詞之間只有一個空格,前後沒有空格。 比如: (1) “hello xiao mi”-> “mi xiao hello”

    • 輸入描述:

      輸入數據有多組,每組佔一行,包含一個句子(句子長度小於1000個字符)

    • 輸出描述:

      對於每個測試示例,要求輸出句子中單詞反轉後形成的句子

    • 示例1:

“`
- 輸入
hello xiao mi
- 輸出
mi xiao hello

代碼

print " ".join(raw_input("請輸入一個句子:").split()[::-1])   
  1. (2017-好未來-筆試編程題)–練習

    • 題目描述: 輸入兩個字符串,從第一字符串中刪除第二個字符串中所有的字符。例如,輸入”They are students.”和”aeiou”,則刪除之後的第一個字符串變成”Thy r stdnts.”

    • 輸入描述: 每個測試輸入包含2個字符串

    • 輸出描述: 輸出刪除後的字符串

    • 示例1:

輸入
They are students.
aeiou 輸出
Thy r stdnts.

代碼:

while True:
    a = raw_input("字符串A:")
    b = raw_input("字符串B:")
    for i in b:
        a=a.replace(i,"")
    else:
        print a
  1. # (2017-網易-筆試編程題)-字符串練習

小易喜歡的單詞具有以下特性:
1.單詞每個字母都是大寫字母
2.單詞沒有連續相等的字母 列可能不連續。 例如:
小易不喜歡”ABBA”,因爲這裏有兩個連續的’B’
小易不喜歡”THETXH”,因爲這裏包含子序列”THTH”
小易喜歡”A”,”ABA”和”ABCBA”這些單詞
給你一個單詞,你要回答小易是否會喜歡這個單詞。

  • 輸入描述: 輸入爲一個字符串,都由大寫字母組成,長度小於100

  • 輸出描述: 如果小易喜歡輸出”Likes”,不喜歡輸出”Dislikes”

示例1 :

    AAA 輸出
    Dislikes
s = raw_input("please input upper:")
 if len(s) >= 100:
     print "The Max length is 100!!"
     exit()
 for i in s:
     if not i.isupper():
         print "Dislikes"
         exit()
 s = list(s)
 for i1 in range(0,len(s)-1):
     if s[i1] == s[i1 + 1]:
         print "Dislikes"
         exit()
 for i2 in range(len(s)):
     for i3 in range(i2 + 2, len(s)):
         if s[i2] == s[i3]:
             for i4 in range(i3, len(s)):
                 if s[i2 + 1] == s[i4]:
                     print "Dislikes"
                     exit()
 print "Likes"
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章