ผลต่างระหว่างรุ่นของ "418531 ภาคต้น 2552/โจทยปัญหาการค้นหาด้วยพละกำลังเยี่ยงควายถึก/เฉลยข้อ 4"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
แถว 7: แถว 7:
  
 
จากแนวคิดข้างต้น เมื่อเขียนเป็น pseudocode จะได้ดังนี้
 
จากแนวคิดข้างต้น เมื่อเขียนเป็น pseudocode จะได้ดังนี้
 +
 +
ตัวแปรทุกอย่างขออ้างอิงจากในห้องเรียน โดยที่ข้อนี้ให้ l = 2
 +
 +
COUNT(c,x)
 +
 +
: count <-- 0
 +
 +
:if(c[0]+c[1]= x)
 +
 +
:: count <-- count + 1
 +
 +
:return(count)
 +
 +
GENERARTE(m,x)
 +
 +
: if l = 0
 +
 +
:: return(COUNT(c,x))
 +
 +
: else
 +
 +
:: for c[l-1]=0 to c[l-1] = 2
 +
 +
::: GENERATE(c[l-1]-1,l-1)
  
 
== ข้อย่อย 2 ==
 
== ข้อย่อย 2 ==

รุ่นแก้ไขเมื่อ 07:22, 18 สิงหาคม 2552

ข้อย่อย 1

อินพุต: เซตของจำนวนเต็ม ซึ่งมีสมาชิกอยู่ ตัว และจำนวนเต็ม

เอาพุต: มีคู่ของจำนวนเต็ม ที่ อยู่กี่คู่

แนวคิด จากโจทย์ เราต้องการหาคู่ของจำนวนเต็ม ที่ ซึ่งในห้องเรียนเราได้รู้วิธีการหา combination มาแล้ว ซึ่งข้อนี้ก็คือการหาซับเซตของ ที่มีขนาด 2 ที่ สมาชิกของซับเซตทั้งสองตัวนี้บวกกันแล้วได้เท่ากับ x ว่ามีทั้งหมดกี่คู่นั่นเอง จากแนวคิดข้างต้น เราจะได้ว่าวัตถุที่เราสนใจคือ combination ของ ที่มีขนาด 2 และเงื่อนไขคือ สมาชิกของซับเซตทั้งสองตัวนี้บวกกันแล้วได้เท่ากับ x นั่นเอง

จากแนวคิดข้างต้น เมื่อเขียนเป็น pseudocode จะได้ดังนี้

ตัวแปรทุกอย่างขออ้างอิงจากในห้องเรียน โดยที่ข้อนี้ให้ l = 2

COUNT(c,x)

count <-- 0
if(c[0]+c[1]= x)
count <-- count + 1
return(count)

GENERARTE(m,x)

if l = 0
return(COUNT(c,x))
else
for c[l-1]=0 to c[l-1] = 2
GENERATE(c[l-1]-1,l-1)

ข้อย่อย 2