Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python
Python
  1. ตรวจสอบว่าตัวเลขทศนิยมเป็นเลขคู่หรือคี่ ใน Python

    ปัญหา สำหรับจำนวนเต็ม ตรวจสอบคู่/คี่ง่ายด้วยหลักสุดท้าย แต่ตัวเลขทศนิยมต้องพิจารณาหลักที่ไม่ใช่ศูนย์สุดท้ายหลังจุดทศนิยม ตัวอย่าง n = 200.290 → หลักที่ไม่ใช่ศูนย์สุดท้ายคือ 9 (คี่) → ผลลัพธ์ Odd แนวคิดการแก้ปัญหา แปลงตัวเลขเป็นสตริง อ่านจากขวาไปซ้าย ข้ามศูนย์นำหน้าหลังจุดทศนิยม เมื่อเจอจุดทศนิยม

  2. ตรวจสอบว่าสตริง r เป็นการต่อท้ายของ s และ t (หรือ t และ s) หรือไม่ ใน Python

    ปัญหา ให้สตริง s, t, r ต้องการตรวจสอบว่า r = s + t หรือ r = t + s ตัวอย่าง s = world, t = hello, r = helloworld → r = t + s → True แนวคิดการแก้ปัญหา ถ้าความยาว r ≠ len(s) + len(t) → False ตรวจสอบว่า r เริ่มต้นด้วย s และจบด้วย t → True ตรวจสอบว่า r เริ่มต้นด้วย t และจบด้วย s → True มิฉะนั้น → Fal

  3. ตรวจสอบว่าตัวเลข 3 ตัวเป็นจำนวนเฉพาะติดกัน (Adjacent Primes) หรือไม่ ใน Python

    ปัญหา จำนวนเฉพาะติดกัน (Adjacent Primes) คือ จำนวนเฉพาะ 3 ตัวที่ไม่มีจำนวนเฉพาะอื่นอยู่ระหว่างกัน เช่น 5, 7, 11 ตัวอย่าง nums = [5, 7, 11] → True (5, 7, 11 เป็นเฉพาะติดกัน) แนวคิดการแก้ปัญหา ตรวจสอบว่าทั้ง 3 ตัวเป็นจำนวนเฉพาะ หาจำนวนเฉพาะถัดไปจากตัวแรก → ต้องเท่ากับตัวที่สอง หาจำนวนเฉพาะถัดไปจาก

  4. ตรวจสอบว่าแก้ไขสมาชิกเดียวในอาร์เรย์ ทำให้สองอาร์เรย์เท่ากันได้หรือไม่ ใน Python

    ปัญหา ให้อาร์เรย์ nums1, nums2 และค่า k สามารถแก้ไข สมาชิกเพียงตัวเดียว ใน nums1 โดยบวกค่าในช่วง [-k, k] ได้ ต้องการทราบว่าสามารถทำให้สองอาร์เรย์เท่ากันได้หรือไม่ ตัวอย่าง nums1 = [5,7,11], nums2 = [5,5,11], k = 8 → แก้ไข nums1[1] โดยบวก -2 (อยู่ในช่วง [-8,8]) ได้ [5,5,11] → True แนวคิดการแก้ปัญห

  5. ตรวจสอบว่า บิตที่ k (นับจากขวา) เป็น 1 หรือไม่ ใน Python

    ปัญหา ให้ตัวเลข n และตำแหน่ง k (นับจากขวา เริ่มที่ 1) ต้องการทราบว่าบิตที่ k เป็น 1 (set) หรือ 0 หลักการ ใช้การเลื่อนบิต () และ AND กับ 1: (k-1)) & 1 ตัวอย่าง n = 23 (binary: 10111), k = 3 → บิตที่ 3 จากขวาคือ 1 → True โค้ดตัวอย่าง (k - 1)) & 1) == 1 n = 23 k = 3 print(solve(n, k)) # True

  6. ตรวจสอบว่า N เป็นจำนวนเฉพาะไดฮีดรัล (Dihedral Prime) หรือไม่ ใน Python

    ปัญหา จำนวนเฉพาะไดฮีดรัล คือ จำนวนที่เป็นเฉพาะ และเมื่อแสดงบนหน้าจอ 7-segment แล้วหมุนหรือพลิก ค่าที่ได้ก็ยังเป็นจำนวนเฉพาะ (อาจเป็นตัวเลขเดิมหรือตัวเลขอื่น) เงื่อนไข ตัวเลขต้องประกอบด้วยหลักที่หมุน/พลิกได้ใน 7-segment เท่านั้น (0,1,2,5,8) — ไม่สามารถมี 3,4,6,7,9 ตัวเลขเองต้องเป็นจำนวนเฉพาะ ตัวเล

  7. ตรวจสอบว่าผลคูณของตัวเลข n ตัว เป็นเลขคู่หรือคี่ ใน Python

    ปัญหา ให้อาร์เรย์ nums ต้องการทราบว่าผลคูณของสมาชิกทั้งหมดเป็นเลขคู่หรือคี่ ข้อสังเกตสำคัญ ผลคูณจะเป็น เลขคู่ ถ้ามีตัวเลขคู่อย่างน้อย 1 ตัวในอาร์เรย์ มิฉะนั้นจะเป็น เลขคี่ (เพราะคี่ × คี่ = คี่) ตัวอย่าง nums = [5, 7, 4, 2, 6] → มีเลขคู่ (4, 2, 6) → ผลลัพธ์คือ Even แนวคิดการแก้ปัญหา วนลูปตรวจสอ

  8. ตรวจสอบว่าผลคูณของหลักที่อยู่ตำแหน่งคู่ หารด้วยผลรวมของหลักที่อยู่ตำแหน่งคี่ลงตัวหรือไม่ ใน Python

    ปัญหา ให้ตัวเลข n ต้องการตรวจสอบว่าผลคูณของหลักที่อยู่ตำแหน่งคู่ (นับจากขวาไปซ้าย ตำแหน่ง 1 คือหลักหน่วย) หารด้วยผลรวมของหลักที่อยู่ตำแหน่งคี่ลงตัวหรือไม่ ตัวอย่าง n = 59361 → ผลลัพธ์คือ True เนื่องจาก (1×3×5) = 15 และ (6+9) = 15 → 15 หาร 15 ลงตัว แนวคิดการแก้ปัญหา นับจำนวนหลักของ n (ใช้ log10 ห

  9. ตรวจสอบว่าผลคูณหลักเลขตำแหน่งคู่ หาร k ลงตัวหรือไม่ด้วย Python

    โจทย์: กำหนดเลข n และ k ตรวจสอบว่าผลคูณหลักเลขตำแหน่งคู่ (นับจากขวา: Units=1, Tens=2, ...) หาร k ลงตัวหรือไม่ ตัวอย่าง n = 59361, k = 3 → ตำแหน่งคู่: 6 (pos2), 9 (pos4) → Product = 54 → 54%3=0 → True หมายเหตุ: ตัวอย่างต้นฉบับระบุ (1*3*5) ผิด ตำแหน่งคู่คือ 6 และ 9 อัลกอริทึม นับจำนวนหลัก (digit_co

  10. ตรวจสอบว่าผลคูณ Integer ใน Range [l, u] เป็น Positive, Negative หรือ Zero ด้วย Python

    โจทย์: กำหนด Range [l, u] ตรวจสอบว่าผลคูณ Integer ทุกตัวใน Range เป็น Positive, Negative หรือ Zero ตัวอย่าง l = -8, u = -2 → Range: -8,-7,-6,-5,-4,-3,-2 → Product = -40320 → Negative อัลกอริทึม (O(1) Math) 0 → Positive (ทั้งหมดบวก) ถ้า l ≤ 0 และ u ≥ 0 → Zero (มี 0 อยู่ใน Range) กรณี l < 0 และ u

  11. ตรวจสอบ Right Triangle จาก 3 ด้าน (Large Sides) ด้วย Python

    โจทย์: กำหนด 3 ด้านใน List ตรวจสอบว่าเป็น Right Triangle หรือไม่ (Pythagorean Theorem) ตัวอย่าง sides = [8, 10, 6] → True (8² + 6² = 64+36=100 = 10²) อัลกอริทึม Sort ด้านทั้ง 3 ตรวจสอบ sides[0]² + sides[1]² == sides[2]² โค้ดตัวอย่าง def solve(sides): sides.sort() if (sides[0]*sides[0])

  12. ตรวจสอบว่าเลขสามารถเขียนในรูป a^b ได้หรือไม่ด้วย Python

    1) ทำให้ n = a^b หรือไม่ ตัวอย่าง n = 125 → True (5³) อัลกอริทึม ถ้า n == 1 → True วน i = 2 ถึง √n: val = log(n) / log(i) ถ้า val ใกล้เคียง Integer (diff < 1e-8) → True False โค้ดตัวอย่าง (C++ → Python) import math def solve(num): if num == 1: return True for i in range(2, i

  13. ตรวจสอบว่า String ที่สอง สร้างจากตัวอักษร String แรกได้หรือไม่ด้วย Python

    โจทย์: กำหนด String s และ t ตรวจสอบว่า t สร้างจากตัวอักษรของ s ได้หรือไม่ (Frequency ต้องพอ) ตัวอย่าง s = owhtlleh, t = hello → True อัลกอริทึม นับ Frequency ทุกตัวอักษรใน s วนตัวอักษรใน t: ถ้า freq[t[i]] == 0 → False freq[t[i]] -= 1 จบลูป → True โค้ดตัวอย่าง from collections import defaultd

  14. ตรวจสอบว่าผลรวมหลักเลขตำแหน่งคี่ หาร k ลงตัวหรือไม่ด้วย Python

    โจทย์: กำหนดเลข n และ k ตรวจสอบว่าผลรวมหลักเลขตำแหน่งคี่ (นับจากขวา: Units=1, Tens=2, ...) หาร k ลงตัวหรือไม่ ตัวอย่าง n = 2416, k = 5 → หลักคี่: 6 (pos1), 4 (pos3) → Sum=10 → 10%5=0 → True อัลกอริทึม total = 0, pos = 1 0: ถ้า pos คี่ → total += n % 10 n //= 10, pos += 1 ตรวจสอบ total % k ==

  15. หา Average Character ของ String และตรวจสอบว่ามีอยู่ใน String หรือไม่ด้วย Python

    โจทย์: กำหนด String s (Alphanumeric) หา Average Character: Floor ของค่าเฉลี่ย ASCII ของทุกตัวอักษร แล้วตรวจสอบว่าตัวอักษรนั้นมีใน s หรือไม่ (โจทย์ถามคืนค่าตัวอักษรนั้น) ตัวอย่าง s = pqrst → ASCII: 112,113,114,115,116 → Mean = 570/5 = 114 → r อัลกอริทึม รวม ASCII ของทุก Character avg = floor(total

  16. ตรวจสอบว่า Bit ที่ตำแหน่ง k เป็น Set หรือ Unset ด้วย Python

    โจทย์: กำหนดเลข n และตำแหน่ง k (นับจากขวา LSB = 1) ตรวจสอบว่า Bit ตำแหน่ง k เป็น 1 (Set) หรือ 0 (Unset) ตัวอย่าง n = 18 (10010), k = 2 → Set (Bit ตำแหน่ง 2 จากขวาคือ 1) อัลกอริทึม Shift Right n ไป (k-1) ตำแหน่ง → Bit ตำแหน่ง k มาอยู่ LSB AND กับ 1: ถ้าเป็น 1 → Set, มิฉะนั้น Unset โค้ดตัวอย่าง

  17. ตรวจสอบว่า Frequency ของทุกตัวอักษรใน String เป็น Prime หรือไม่ด้วย Python

    โจทย์: กำหนด String s ตรวจสอบว่า Frequency ของทุก Character เป็น Prime Number หรือไม่ ตัวอย่าง s = apuuppa → True (a:2, p:3, u:2 → ทั้งหมดเป็น Prime) อัลกอริทึม นับ Frequency ทุก Character (Dictionary/Counter) 0 และเป็น Prime มีตัวไหนไม่ผ่าน → False โค้ดตัวอย่าง 0 and not isPrime(freq[char]):

  18. ตรวจสอบว่าเลขเป็น Euclid Number หรือไม่ด้วย Python

    Euclid Number: จำนวนเต็มรูปแบบ P_n + 1 โดย P_n = ผลคูณของ Prime แรก n ตัว ตัวอย่าง n = 211 → True เพราะ 211 = (2×3×5×7) + 1 อัลกอริทึม Sieve of Eratosthenes หา Prime ทั้งหมดจน MAX คูณ Prime ตัวแรก们 เรียงลำดับ (mul = 1, mul *= prime[i]) ทุกขั้นตอนตรวจสอบ mul + 1 == n ถ้า mul ≥ n หยุด → False โค้

  19. ตรวจสอบว่าเลขเป็น Wagstaff Prime หรือไม่ด้วย Python

    Wagstaff Prime: จำนวนเฉพาะรูปแบบ (2^q + 1)/3 โดย q เป็น Odd Prime ตัวอย่าง n = 683 → True เพราะ 683 = (2^11 + 1)/3, q=11 (Odd Prime) อัลกอริทึม ตรวจสอบ n เป็น Prime ตรวจสอบ (n*3 - 1) เป็น Power of 2 (เพราะ n = (2^q+1)/3 → 3n-1 = 2^q) ทั้งคู่ True → Wagstaff Prime โค้ดตัวอย่าง 1: for i

  20. ตรวจสอบว่าเลขคู่เป็น Cousin Prime หรือไม่ด้วย Python

    Cousin Primes: คู่จำนวนเฉพาะที่ต่างกัน 4 (|p1 - p2| = 4) ตัวอย่าง pair = (19, 23) → True (ทั้งคู่เป็น Prime, Diff = 4) อัลกอริทึม ถ้า |p1 - p2| != 4 → False ตรวจสอบทั้งคู่เป็น Prime (Trial Division) โค้ดตัวอย่าง 1: for i in range(2, num): if num % i == 0: re

Total 9001 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:213/451  20-คอมพิวเตอร์/Page Goto:1 207 208 209 210 211 212 213 214 215 216 217 218 219