องค์ประกอบอ่อน, Invariant ของลูป และการติดตาม Flowchart
แนะนำใหม่| English | ความหมาย |
|---|---|
| loop invariant/luːp ɪnˈveərɪənt/ | ตัวแปรคงที่ของวงวน |
| weak composition/wiːk ˌkɒmpəˈzɪʃn/ | การแยกส่วนแบบอ่อน |
ตัดสินใจก่อนตอบคำถาม
- การจัดสรร token เดียวกันให้กับกล่องที่มีชื่อแตกต่างกันกับการเลือกผู้รับที่มีลำดับสำหรับ token ที่แตกต่างกัน การเปลี่ยนแปลงเล็กน้อยในโมเดลการนับสามารถทำให้คำตอบเปลี่ยนไปหลายเท่า
- เป้าหมายของคุณ: นับการจัดสรรที่ไม่สามารถแยกแยะได้ด้วยข้อจำกัดเป็นจำนวนเต็มไม่ลบหรือบวก
อ่านความสัมพันธ์
- จำนวนการแก้จำนวนเต็มไม่ลบของ x₁+⋯+x_k=n คือ C(n+k−1,k−1), สำหรับ n≥0 และ k≥1 แสดง n ดาวเหมือนกันแยกเข้ากล่องที่มีชื่อ k กล่องโดยใช้แท่งคั่น k−1 แท่ง; แท่งติดกันและแท่งที่ขอบอนุญาตให้ค่าเป็นศูนย์ กล่องแยกแยะกันได้ แต่วัตถุแยกแยะไม่ได้ การนับ token ที่แตกต่างกันจะจัดสรรแต่ละ token แยกกัน ให้ k^n ก่อนพิจารณาข้อจำกัดอื่นๆ ตัดสินใจโมเดลจากสิ่งที่วัตถุและผู้รับแทน ไม่ใช่จากสัมประสิทธิ์ทวิภาคที่ดูคุ้นเคย
- ติดตาม flowchart按照คำสั่งพร้อมพฤติกรรมรีเซ็ตที่ถูกต้อง
How many ways put 11 identical tokens into 4 named boxes, allowing empty boxes?
Difficulty 1/5 · 100 coins + a small bonus on first completion today
There are 11 stars and 3 bars. Choose the 3 bar positions among 14 positions: C(14,3)=364.
ใช้กฎที่กำหนด
- สำหรับการจัดสรรที่เป็นบวก x_i≥1, ตั้ง z_i=x_i−1; ผลรวมที่เหลือคือ n−k, ให้ C(n−1,k−1) เมื่อ n≥k ขอบเขตล่างทั่วไป x_i≥a_i จัดการโดยการลบแต่ละ a_i ออก อย่างน้อยหนึ่งช่องว่างคือส่วนเสริมของทุกช่องเป็นบวก: ลบ C(n−1,k−1) ออกจากผลรวมไม่ลบ กรณีซ้อนทับเช่นมีช่องว่างพอดีสองช่องต้องใช้การนับที่แตกต่าง; การลบกรณีช่องว่างแต่ละตัวแยกกันจะทำให้เกิดนับซ้ำในส่วนตัด
- ใช้ loop invariant และตัววัดความก้าวหน้าในการอธิบายความถูกต้องของอัลกอริทึม
Starting from S=0, add successive odd numbers 1,3,5,… until S≥10. What is S at exit?
Difficulty 1/5 · 100 coins + a small bonus on first completion today
The successive sums are 1,4,9,16. The first sum at least 10 is 16, so the test overshoots rather than declaring 10 square.
ตรวจสอบเงื่อนไข
- ติดตาม flowchartทีละคำสั่งที่ทำงาน บันทึกตัวแปรในตาราง แยกแยะการกำหนดค่าจากการทดสอบความเท่าเทียมทางคณิตศาสตร์; ด้านขวาของการกำหนดค่าใช้ค่าเก่าก่อนการแทนที่ บันทึกว่าสาขาถัดไปจะทำงานและตัวแปรอะไรถูกรีเซ็ต ตัวสมัครใหม่รอบนอกอาจรีเซ็ตผลรวมภายในโดยไม่รีเซ็ตตัวสมัครเอง สำหรับกระบวนการที่เพิ่ม 1,3,5,… ไปยัง S จากศูนย์, หลัง m ครั้งเพิ่ม S=m² และจำนวนที่จะเพิ่มต่อไปคือ 2m+1
- ใช้ loop invariant และตัววัดความก้าวหน้าในการอธิบายความถูกต้องของอัลกอริทึม
กระจาย 11 token เหมือนกันเข้าไปใน 4 กล่องที่มีชื่อ การจัดสรรที่ไม่ลบมีจำนวน C(14,3)=364; การจัดสรรที่เป็นบวกทั้งหมดมีจำนวน C(10,3)=120 ดังนั้น 244 การจัดสรรจะมีอย่างน้อยหนึ่งช่องว่างสำหรับการทดสอบผลบวกคี่ด้วย N=10, S ก้าวไป 0,1,4,9,16; มันเกินเป้าหมายและปฏิเสธ 10 สำหรับ N=9 มันออกจากวงลูปที่ S=9 หลังเพิ่มสามครั้ง จำนวนที่จะเพิ่มต่อไปคือ 1,3,5,7,9; คอลัมน์ผลรวมและจำนวนที่จะเพิ่มต่อไปต้องไม่สับสน
Of the 364 nonnegative allocations of 11 tokens to 4 boxes, 120 have every box positive. The count with at least one empty box is ____.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Subtract the all-positive complement once: 364−120=244.
ใช้รูปแบบงาน
- Loop invariant เป็นจริงก่อนและหลังแต่ละรอบ iterating Invariant ของผลบวกกำลังสองมีค่าเริ่มต้นที่ m=0 และคงไว้เพราะ m²+(2m+1)=(m+1)² Invariant เพียงอย่างเดียวไม่พิสูจน์การหยุดทำงาน เพื่อทดสอบว่าจำนวนเต็ม N≥0 เป็นกำลังสองหรือไม่โดยเพิ่มเลขคี่จนกว่า S≥N, S เติบโตโดยไม่จำกัด; ในทางเทียบเท่า m เพิ่มขึ้นและต้องถึงขีดจำกัดเช่น N ที่การออก, ความเท่าเทียมหมายถึงกำลังสองและการเกินเป้าหมายหมายถึงไม่ใช่กำลังสอง ค่าที่พิมพ์ออกมาต้องเกิดขึ้นในเส้นทาง wykon执行情况จริง; รูปแบบตัวเลขที่Logs plausible เพียงอย่างเดียวไม่ถือเป็น trace
- ใช้ loop invariant และตัววัดความก้าวหน้าในการอธิบายความถูกต้องของอัลกอริทึม
วัตถุเหมือนกันและวัตถุที่แยกแยะกันได้ใช้โมเดลต่างกัน อย่างน้อยหนึ่งช่องว่างไม่เท่ากับพอดีหนึ่งช่อง ใน flowchart รักษาลำดับการอัปเดตและรีเซ็ตเฉพาะตัวแปรที่เส้นทางที่被执行reset จริงๆ
คำตอบใดสอดคล้องกับกรณีนี้?
นับการจัดสรรที่แยกแยะไม่ได้ภายใต้ข้อจำกัดเป็นบวกหรือค่าบวก
A preserved loop invariant alone proves that every execution of the loop terminates.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
An infinite loop can preserve a property forever. Termination also needs a progress argument or decreasing well-founded measure.
รักษาระยะห่าง
- ส่วนประกอบที่อ่อน — การจัดแบ่งลำดับของผลรวมเป็นพจน์จำนวนเต็มที่ไม่เป็นลบ
- อสมการคงสภาพในลูป — คุณสมบัติที่ถูกรักษาก่อนและหลังแต่ละรอบการทำงานของลูป
- นับการจัดสรรที่ไม่สามารถแยกแยะได้ ภายใต้ข้อจำกัดที่เป็นจำนวนเต็มที่ไม่เป็นลบหรือเป็นบวก
- ติดตาม flowchart按照คำสั่งพร้อมพฤติกรรมรีเซ็ตที่ถูกต้อง
- ใช้ loop invariant และตัววัดความก้าวหน้าในการอธิบายความถูกต้องของอัลกอริทึม
Match each term with its precise meaning in this lesson.
Difficulty 2/5 · 140 coins + a small bonus on first completion today
Keep the distinctions stated in the teaching example.
Put this lesson’s reasoning or event sequence in order.
Difficulty 3/5 · 200 coins + a small bonus on first completion today
The order follows the stated process; check each stage before the next.