Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python
Python
  1. โปรแกรมหา substring ที่ nice ที่สุดด้วย Python

    สมมติว่าเรามีสตริง s เราต้องหา substring ที่ nice ที่สุดและยาวที่สุด สตริง s จะเป็น nice เมื่อสำหรับทุกตัวอักษรใน s ตัวอักษรนั้นปรากฏทั้งพิมพ์ใหญ่และพิมพ์เล็ก ถ้ามีหลายอัน ให้คืน substring ที่ปรากฏก่อนสุด เช่น s = ZbybBbz ผลลัพธ์คือ bBb เพราะมีทั้ง b และ B ขั้นตอนการแก้ปัญหา cur_max = -1, res = ว

  2. โปรแกรมรวมสตริงสลับกันด้วย Python

    สมมติว่าเรามีสตริง s และ t เราต้องรวมพวกเขาโดยสลับตัวอักษรเริ่มจาก s ถ้า s และ t ความยาวไม่เท่ากัน ให้เติมตัวอักษรที่เหลือต่อท้าย เช่น s = major t = general ผลลัพธ์คือ mgaejnoerral เพราะ t ยาวกว่า เติม ral ท้าย ขั้นตอนการแก้ปัญหา i = j = 0, result = while i < len(s) และ j < len(t): result += s[i

  3. โปรแกรมนับจำนวนไอเท็มที่ตรงตามกฎด้วย Python

    สมมติว่าเรามีอาร์เรย์ items โดยแต่ละ items[i] มี 3 อิลิเมนต์ [type_i, color_i, name_i] อธิบายประเภท สี และชื่อของไอเท็มที่ i เรายังมีกฎโดย ruleKey และ ruleValue ไอเท็มที่ i ตรงกฎถ้า ruleKey=type และ ruleValue=type_i หรือ ruleKey=color และ ruleValue=color_i หรือ ruleKey=name และ ruleValue=name_i หาจ

  4. โปรแกรมหาจุดที่ใกล้ที่สุดซึ่งมี x หรือ y เหมือนกันด้วย Python

    สมมติว่าเรามีชุดจุดในอาร์เรย์ pts และจุดปัจจุบัน (x, y) จุดที่ถูกต้อง (valid) คือจุดที่มี x เหมือนกันหรือ y เหมือนกับจุดปัจจุบัน เราต้องคืน index ของจุดที่ถูกต้องที่มีระยะทาง Manhattan น้อยที่สุดจากจุดปัจจุบัน ถ้ามีหลายจุด ให้คืน index น้อยที่สุด (Manhattan distance ระหว่าง (a,b) และ (p,q) คือ |a-p

  5. โปรแกรมตรวจสอบว่าสตริงบाइनารีมี segment ของ 1 ได้มากสุด 1 ช่วงหรือไม่ด้วย Python

    สมมติว่าเรามีสตริงบाइनารี s (ไม่มีศูนย์นำหน้า) เราต้องตรวจสอบว่า s มีช่วงติดกันของ 1 ได้มากสุด 1 ช่วงหรือไม่ เช่น s = 11100 ผลลัพธ์คือ True เพราะมีช่วง 1 เพียงช่วงเดียวคือ 111 ขั้นตอนการแก้ปัญหา count = -1 ถ้า len(s) == 1: คืน True วนลูปแต่ละ i ใน s: -1: คืน False (เจอ 1 ช่วงที่สอง) มิฉะนั้นถ้า

  6. โปรแกรมตรวจสอบว่าสลับตัวอักษรครั้งเดียวทำให้สตริงเท่ากันได้หรือไม่ด้วย Python

    สมมติว่าเรามีสตริง s และ t ความยาวเท่ากัน พิจารณาการดำเนินการเลือกสอง index ในสตริง (อาจเท่ากันได้) แล้วสลับตัวอักษร ต้องการทราบว่าสามารถทำให้ s และ t เหมือนกันได้ด้วยการสลับสูงสุด 1 ครั้งบนสตริงใดสตริงหนึ่งหรือไม่ เช่น s = hello t = hlelo ผลลัพธ์คือ True เพราะสลับ e และ l ใน s หรือ t จะทำให้เท่ากั

  7. โปรแกรมหาตัวเลขตัวที่สองที่ใหญ่ที่สุดในสตริงด้วย Python

    สมมติว่าเรามีสตริง alphanumeric s เราต้องหาตัวเลขตัวที่สองที่ใหญ่ที่สุดที่ปรากฏใน s ถ้าไม่มีให้คืน -1 เช่น s = p84t3ho1n ผลลัพธ์คือ 4 เพราะตัวเลขที่มีคือ [1,3,4,8] ตัวที่สองใหญ่สุดคือ 4 ขั้นตอนการแก้ปัญหา lst = set() วนลูปแต่ละ let ใน s: ถ้า let ไม่ใช่ตัวอักษร (คือตัวเลข): ใส่ int(let) เข้า lst

  8. โปรแกรมหาผลรวม subarray เพิ่มขึ้นสูงสุดด้วย Python

    สมมติว่าเรามีอาร์เรย์ nums ที่มีค่าบวก เราต้องหาผลรวมสูงสุดของ subarray ที่เพิ่มขึ้นอย่างเคร่งครัด (strictly increasing) subarray [nums_l ... nums_r] เพิ่มขึ้นได้ก็ต่อเมื่อ nums_i < nums_i+1 สำหรับทุก i ที่ l ≤ i < r เช่น nums = [15,25,35,5,15,55] ผลลัพธ์คือ 75 เพราะ [5,15,55] เป็น subarray เพิ่มขึ

  9. โปรแกรมหาจำนวนจำนวนเต็มที่ต่างกันในสตริงด้วย Python

    สมมติว่าเรามีสตริง alphanumeric ตัวพิมพ์เล็ก s เราต้องแทนที่ทุกตัวอักษรที่ไม่ใช่ตัวเลขด้วยช่องว่าง แล้วเราจะได้จำนวนเต็มบางจำนวนที่คั่นด้วยช่องว่างอย่างน้อยหนึ่งช่อง หาจำนวนจำนวนเต็มที่ต่างกันหลังทำการแทนที่ สองตัวเลขถือว่าต่างกันถ้ารูปแบบทศนิยมโดยไม่มีศูนย์นำหน้าต่างกัน เช่น s = ab12fg012th5er67 ผ

  10. โปรแกรมกำหนดสีของช่องหมากรุกด้วย Python

    สมมติว่าเรามีพิกัดช่องหมากรุกเป็นสตริง แทนแถวและคอลัมน์ เราต้องตรวจสอบว่าช่องนั้นเป็นสีขาวหรือไม่ เป็นขาวคืน True ไม่ใช่คืน False เช่น coordinate = f5 ผลลัพธ์คือ True ขั้นตอนการแก้ปัญหา ถ้า ASCII ของ coordinate[0] % 2 == int(coordinate[1]) % 2: คืน False (สีดำ) มิฉะนั้น: คืน True (สีขาว) เหตุผล:

  11. โปรแกรมหาคำแรก k คำหลังตัดประโยคด้วย Python

    สมมติว่าเรามีประโยค s ที่มีคำภาษาอังกฤษ คั่นด้วยช่องว่างหนึ่งช่อง ไม่มีช่องว่างนำหน้าหรือท้าย เรายังมีค่า k ต้องการหาคำแรก k คำหลังจากตัดทอน เช่น s = Coding challenges are really helpful for students k = 5 ผลลัพธ์คือ Coding challenges are really helpful ขั้นตอนการแก้ปัญหา words = แยก s ด้วยช่องว่า

  12. โปรแกรมหาลบของผลคูณอาร์เรย์ด้วย Python

    สมมติว่าเรามีอาร์เรย์ nums เราต้องหาลบ (sign) ของผลคูณของทุกอิลิเมนต์ในอาร์เรย์ เช่น nums = [-2,3,6,-9,2,-4] ผลลัพธ์คือ Negative เพราะผลคูณคือ -2592 ขั้นตอนการแก้ปัญหา zeroes = 0, negatives = 0 วนลูปแต่ละ i ใน nums: ถ้า i == 0: zeroes += 1 ถ้า i < 0: negatives += 1 0: คืน Zero มิฉะนั้นถ้า nega

  13. โปรแกรมหาจำนวนการดำเนินการน้อยที่สุดเพื่อทำให้อาร์เรย์เพิ่มขึ้นอย่างเคร่งครัดด้วย Python

    สมมติว่าเรามีอาร์เรย์ nums ในหนึ่งการดำเนินการ เราสามารถเลือกอิลิเมนต์หนึ่งและเพิ่มค่าขึ้น 1 เช่น [4,5,6] เลือก index 1 ได้ [4,5,5] ต้องการหาจำนวนการดำเนินการน้อยที่สุดเพื่อทำให้ nums เพิ่มขึ้นอย่างเคร่งครัด (strictly increasing) เช่น nums = [8,5,7] ผลลัพธ์คือ 7 เพราะต้องเพิ่มเป็น [8,6,7]→[8,7,7]→[

  14. โปรแกรมตรวจสอบว่าประโยคเป็น pangram หรือไม่ด้วย Python

    สมมติว่าเรามีประโยค s ที่มีแต่ตัวอักษรพิมพ์เล็กภาษาอังกฤษ เราต้องตรวจสอบว่ามันเป็น pangram หรือไม่ พังแกรมคือสตริงที่มีตัวอักษรทั้ง 26 ตัวครบ เช่น s = thegrumpywizardmakestoxicbrewfortheevilqueenandjack ผลลัพธ์คือ True เพราะมี a-z ครบ 26 ตัว ขั้นตอนการแก้ปัญหา dictb = {} (dictionary นับจำนวนตัวอัก

  15. โปรแกรมหาผลรวมตัวเลขในฐาน K ด้วย Python

    สมมติว่าเรามีจำนวน n ในฐานสิบ (base 10) และค่า k เราต้องหาผลรวมของตัวเลขของ n หลังจากแปลงจากฐาน 10 เป็นฐาน k เมื่อคำนวณผลรวมตัวเลข เราจะถือแต่ละตัวเลขเป็นฐานสิบ เช่น n = 985 k = 8 ผลลัพธ์คือ 12 เพราะ 985 ในฐาน 8 คือ 1731 ผลรวม 1+7+3+1 = 12 ขั้นตอนการแก้ปัญหา ans = 0 while n ≥ k: ans += n % k n =

  16. โปรแกรมแทนที่ตัวเลขด้วยตัวอักษรในสตริงด้วย Python

    สมมติว่าเรามีสตริง alphanumeric s ที่มีตัวอักษรพิมพ์เล็กในตำแหน่งคู่ และตัวเลขในตำแหน่งคี่ 定義 operation shift(c, x) โดย c คือตัวอักษร x คือตัวเลข จะหาตัวอักษรที่อยู่หลัง c ไป x ตัว เช่น shift(p, 5) = u, shift(a, 0) = a สำหรับทุก index คี่ i เราต้องแทนที่ s[i] ด้วย shift(s[i-1], s[i]) คืนสตริงหลังแท

  17. โปรแกรมหาระยะทางน้อยที่สุดไปยัง target element ด้วย Python

    สมมติว่าเรามีอาร์เรย์ nums และค่า target (ซึ่งมีอยู่ใน nums แน่นอน) และ start เราต้องหา index i ที่ nums[i] = target และ |i - start| น้อยที่สุด คืนค่า |i - start| นั้น เช่น nums = [3,4,5,6,7] target = 7 start = 2 ผลลัพธ์คือ 2 เพราะ nums[4] = 7 ดังนั้น i = 4, |4-2| = 2 ขั้นตอนการแก้ปัญหา minimum =

  18. โปรแกรมหาปีที่ประชากรมากที่สุดด้วย Python

    สมมติว่าเรามีตาราง 2 คอลัมน์ (birth, death) แต่ละแถวแทนปีเกิดและปีตายของคนคนที่ i ประชากรของปี y คือจำนวนคนที่มีชีวิตอยู่ในปี y คนที่ i นับในปี y เมื่อ y อยู่ในช่วง [birth_i, death_i - 1] (ไม่นับในปีที่ตาย) หาปีแรกที่มีประชากรมากที่สุด เช่น ข้อมูลเข้า: BirthDeath 19702010 19602020 19401970 ผลลั

  19. โปรแกรมหา subarray 2 อันไม่ทับกันที่มีผลรวมเท่ากัน target ด้วย Python

    สมมติว่าเรามีอาร์เรย์ arr และค่า target เราต้องหา subarray 2 อันที่ไม่ทับกัน ซึ่งแต่ละอันมีผลรวมเท่ากับ target หากมีหลายคำตอบ ให้เลือกคู่ที่ผลรวมของความยาวน้อยที่สุด คืนค่าผลรวมความยาวน้อยที่สุด ถ้าไม่มีคืน -1 เช่น arr = [5,2,6,3,2,5] target = 5 ผลลัพธ์คือ 2 เพราะมี subarray ผลรวม 5 ทั้งหมด 3 อันคื

  20. โปรแกรมหาจำนวนค่าที่ไม่ซ้ำกันน้อยที่สุดหลังลบ k อิลิเมนต์ด้วย Python

    สมมติว่าเรามีอาร์เรย์ nums และตัวเลข k เราต้องหาจำนวนค่าที่ไม่ซ้ำกัน (unique) ที่น้อยที่สุดหลังจากลบอิลิเมนต์ออกไปก็พอดี k ตัว เช่น nums = [5,4,2,2,4,4,3] k = 3 ผลลัพธ์คือ 2 เพราะลบ 5, 3 และหนึ่งใน 2 หรือ 4 จะเหลือแค่ 2 และ 4 ขั้นตอนการแก้ปัญหา นับความถี่ของแต่ละตัวเลขใน dictionary count = จำนวนค่

Total 9001 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:285/451  20-คอมพิวเตอร์/Page Goto:1 279 280 281 282 283 284 285 286 287 288 289 290 291