หลายเดือนก่อนไปเดินโรบินสันเล่น ก็เจอของแปลกๆ ที่อยากได้เยอะเลย แต่ไม่มีตังค์ซื้อซักอย่าง เลยสัญญาว่าจะเก็บตังค์ซื้อเป็นของขวัญวันเกิดให้ตัวเองซักชิ้น
วันนี้มีได้ไปโรบินสันอีกที เลยเดินๆ ไล่ดูของที่อยากได้อีกรอบ สุดท้ายก็ตกลงปลงใจ หยิบเจ้านี่กลับบ้านครับ ^__^
ปล.(ประเด็น) วันนี้มีงานวิ่งการกุศลที่โรงเรียน สาวม.ปลายโรงเรียนเราน่ารักมาก >\\\< ♥
Nov 12, 2011
Oct 8, 2011
ขับรถไปดูหนัง
สืบเนื่องจากวันนี้ จับพลัดจับผลูได้ขับรถถึง 3 คันด้วยกัน!! เลยคิดว่าน่าจะบันทึกถึงมันไว้หน่อย แล้วก็เกิดไอเดียมองย้อนอดีตกลับไปว่า เราขับรถมาแล้วกี่คันนะ? เลยคิดว่าถ้าเขียนถึงมันเป็น blog ธรรมดาๆ คงจะหายาก แถมยังลำบากเวลาจะเพิ่มข้อมูลอีกด้วย เลยตกลงใจว่าจะแยกเรื่องรถที่เคยขับออกมาเป็นหน้าๆ หนึ่งไปเลยละกัน
ปล. (ไม่เกี่ยวกะบล๊อก) The Three Musketeers สนุกมากๆ (หนีไปดูมาคนเดียว - ตอนแรกว่าจะ blog เรื่องนี้ละ แต่ดันลืมคำพูดในหนังไปแล้วอะ TwT)
ปล. (ไม่เกี่ยวกะบล๊อก) The Three Musketeers สนุกมากๆ (หนีไปดูมาคนเดียว - ตอนแรกว่าจะ blog เรื่องนี้ละ แต่ดันลืมคำพูดในหนังไปแล้วอะ TwT)
Sep 11, 2011
เล่นเกมกันๆ - GROW CANNON
| EYEZMAZE เป็นเว็บเกมที่ผมเป็นแฟนคลับมานานมาก แต่ด้วยหลังๆ มานี้ ภารกิจค่อนข้างรัดตัว ทำให้ไม่ได้กลับไปเล่นเกมน่ารักๆ เหล่านี้เลย วันนี้ว่างๆ เลยกลับไปหาเพื่อนเก่าที่ไม่ได้เจอซะนาน แล้วก็เจอเกมน่ารักๆ อย่าง GROW CANNON ครับ ภารกิจของเราคือการปลุกเจ้าขี้เซาให้ตื่นซะที! พร้อมแล้วก็ ลุยกันเลย ^^ (อ๊ะๆ! อย่ารีบดูเฉลยนะคร้าบบ) |
| !!! Spoiler warning !!! | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| End of spoiling. |
ตอนจบน่ารักมาก!! >////<
Sep 6, 2011
เจอรถ Google Street View
วันนี้ตอนกลับบ้าน ไม่ได้ไปทางที่ใช้ประจำ (เพราะไม่ได้เป็นคนขับเอง)
แอร์รถเย็นๆ ข้างนอกฝนตกเบาๆ บรรยากาศกำลังน่านอนเลยทีเดียว
แล้วก็หันไปมองทางขวา... รถ Google Street View ขับผ่านหน้าไป
รีบบอกให้แม่ขับตามอย่างเร็ว แล้วก็หยิบกล้องมาแช๊ะๆๆ

กดชัตเตอร์ไปเป็นสิบแต่ดันใช้ได้อยู่แค่รูปเดียวเองแฮะ เสียดายจัง
แต่มีความสุข ^.^
แอร์รถเย็นๆ ข้างนอกฝนตกเบาๆ บรรยากาศกำลังน่านอนเลยทีเดียว
แล้วก็หันไปมองทางขวา... รถ Google Street View ขับผ่านหน้าไป
รีบบอกให้แม่ขับตามอย่างเร็ว แล้วก็หยิบกล้องมาแช๊ะๆๆ
กดชัตเตอร์ไปเป็นสิบแต่ดันใช้ได้อยู่แค่รูปเดียวเองแฮะ เสียดายจัง
แต่มีความสุข ^.^
Aug 20, 2011
Je te veux
ถูกใช้ประกอบเกม Binary Land ด้วย!!!
ปล.ตั้งแต่เล่น twitter มา เดี๋ยวนี้ขี้เกียจ blog อะไรยาวๆ แฮะ - -"
ปล.ตั้งแต่เล่น twitter มา เดี๋ยวนี้ขี้เกียจ blog อะไรยาวๆ แฮะ - -"
Aug 18, 2011
อยากทำ อย่างที่ 4 คีย์บอร์ดที่มีไฟบอกภาษา
ช่วงสองสามวันมานี้ มีงานเอกสารให้ได้พิมพ์เยอะมาก
แม้ว่าส่วนตัวแล้วจะพิมพ์สัมผัสพอได้ แต่ก็ติดนิสัยมองคีย์บอร์ดเวลาพิมพ์อยู่ดี
สงสัยเพราะไม่ได้ฝึกอย่างถูกวิธีมาตั้งแต่แรกหละมั้ง แต่ฝึกจากการเล่น MSN เอา
ผลที่ตามมาก็เหมือนที่ทุกคนเจอ คือ พิมพ์กลายเป็นภาษาต่างดาวไปเลย ^^"
จริงๆ จะไปว่าก็ไม่ได้นะ เพราะผิดที่เรา 100% เลยที่ไม่ยอมมองจอ
อีกอย่างนึงคือ มันเป็นสิ่งที่สำคัญมากในชีวิตเรา เพราะทำให้เราได้นามปากกานี้มา
แล้วโซลูชันที่แวบขึ้นมาในหัวตอนนั้นทันทีเลยคือ
ทำไมเราไม่ทำให้เห็นบนคีย์บอร์ดเลยหละ ว่ากำลังพิมพ์ภาษาอะไรอยู่
วิธีทำมันก็มีเยอะนะ คิดออกเยอะมาก
แต่ทีคิดว่าน่าจะเวอร์ก+ง่าย+ประหยัดที่สุด (แต่เข้าใจคนเดียว) คือ ใส่ไฟหัวคีย์บอร์ด
ถ้าคีย์บอร์ดเป็นภาษาอังกฤษ ก็เปิดไฟดวงซ้าย (หรือสีนึง)
พอเปลี่ยนเป็นไทย ก็เปิดไฟด้านขวา (หรือเปลี่ยนสี)
จริงๆ จากโซลูชันนี้ สามารถแตกแขนงออกไปได้เยอะแยะมากเลยนะ
ไว้ถ้าทำแบบนี้ได้สำเร็จแล้ว จะลองเปลี่ยนวิธีการดูต่อไปเรื่อยๆ ละกันนะ
^^
ปล. เนื่องจาก entry นี้ draft มานานเกิน (ตั้งแต่ปลายปี 09 โน่น)
ตอนนี้ทำออกมาคงไม่ต้องใช้ละ เพราะว่าพิมพ์สัมผัสได้เรียบร้อยแล้ว อิอิ
แต่ก็น่าลองเอาไปทำให้คนที่พิมพ์สัมผัสไม่เป็นจริงๆ นะ!!
แม้ว่าส่วนตัวแล้วจะพิมพ์สัมผัสพอได้ แต่ก็ติดนิสัยมองคีย์บอร์ดเวลาพิมพ์อยู่ดี
สงสัยเพราะไม่ได้ฝึกอย่างถูกวิธีมาตั้งแต่แรกหละมั้ง แต่ฝึกจากการเล่น MSN เอา
ผลที่ตามมาก็เหมือนที่ทุกคนเจอ คือ พิมพ์กลายเป็นภาษาต่างดาวไปเลย ^^"
จริงๆ จะไปว่าก็ไม่ได้นะ เพราะผิดที่เรา 100% เลยที่ไม่ยอมมองจอ
อีกอย่างนึงคือ มันเป็นสิ่งที่สำคัญมากในชีวิตเรา เพราะทำให้เราได้นามปากกานี้มา
แล้วโซลูชันที่แวบขึ้นมาในหัวตอนนั้นทันทีเลยคือ
ทำไมเราไม่ทำให้เห็นบนคีย์บอร์ดเลยหละ ว่ากำลังพิมพ์ภาษาอะไรอยู่
วิธีทำมันก็มีเยอะนะ คิดออกเยอะมาก
แต่ทีคิดว่าน่าจะเวอร์ก+ง่าย+ประหยัดที่สุด (แต่เข้าใจคนเดียว) คือ ใส่ไฟหัวคีย์บอร์ด
ถ้าคีย์บอร์ดเป็นภาษาอังกฤษ ก็เปิดไฟดวงซ้าย (หรือสีนึง)
พอเปลี่ยนเป็นไทย ก็เปิดไฟด้านขวา (หรือเปลี่ยนสี)
จริงๆ จากโซลูชันนี้ สามารถแตกแขนงออกไปได้เยอะแยะมากเลยนะ
ไว้ถ้าทำแบบนี้ได้สำเร็จแล้ว จะลองเปลี่ยนวิธีการดูต่อไปเรื่อยๆ ละกันนะ
^^
ปล. เนื่องจาก entry นี้ draft มานานเกิน (ตั้งแต่ปลายปี 09 โน่น)
ตอนนี้ทำออกมาคงไม่ต้องใช้ละ เพราะว่าพิมพ์สัมผัสได้เรียบร้อยแล้ว อิอิ
แต่ก็น่าลองเอาไปทำให้คนที่พิมพ์สัมผัสไม่เป็นจริงๆ นะ!!
Aug 14, 2011
สวัสดีวันแม่ (ย้อนหลัง)
ขอบคุณ และขอโทษครับ
รักแม่นะครับ
รักแม่นะครับ
Aug 3, 2011
พายุ น้ำท่วม เซ็ง
ยังอยู่ที่เดิม เหมือนเมื่อหลายๆ ปีที่แล้วนั่นแหละ
แปลกจริง บันทึกถึงมันเป็นครั้งที่ 3 อารมณ์คนละอย่างเลยวู้ย
"5:58"
นี่ถ้าเป็นสมัยก่อนคงนึกว่าตื่นได้โดยไม่ต้องพึ่งนาฬิกาปลุก
แต่จริงๆ แล้วคือนั่งเว่นเว้อทั้งๆ ที่เป็นช่วงสอบมาตลอดคืนต่างหาก
ที่นอนไม่หลับคงเป็นเพราะช่วงนี้มีเหตุการณ์เชิงอารมณ์ต่างๆ มากมาย
ซึ่งเราคงไม่แยแสแม้แต่นิดเดียว ถ้าหากเป็นสองสามปีที่แล้วอะนะ
ก็ไม่รู้เหมือนกันว่าตนเองเปลี่ยนไปมากมายขนาดนี้ตั้งแต่เมื่อไหร่
(ให้สังเกตวันต่อวันมันคงไม่เห็น แต่พอทิ้งระยะเป็นปีๆ หละรู้เลย)
ก็ขอแสดงความเสียใจกะคุณเพื่อนด้วย ที่ไปทำพังจนสาวเมินซะได้
สุดท้ายคนที่เป็น mastermind ก็ต้องกลับไปซ่อมแซมให้สินะ
แล้วก็นะ ขอทีเถอะ กล้าๆ พูดความจริงกะตัวเองอีกหน่อยได้มั้ย
อย่าลืมว่าโกหกคนทั้งโลกได้ (ขั้นเทพ!) แต่โกหกตัวเองนั้นไม่มีวัน
ในเมื่อมองทะลุปรุโปร่งแล้วว่าต้องเจ็บ ก็ถอยออกมาแต่เนิ่นๆ เลยเซ่
ไม่ต้องอ้างโน่นนี่นั่นซื้อเวลาหรอก
เพราะสุดท้ายก็เจ็บอยู่ดี!
อะไรทำให้เราเป็นคนอย่างนี้ไปได้เนี่ย???
ยอมรับตรงๆ เลยละกัน ว่าเพราะแม่เป็นหลัก
ตอนเด็กๆ ก็โกหกเก่งพอตัวอยู่ละ (ไม่งั้นก็เจอไม้เรียวไม่เว้นวัน)
พอมาเจอกับเหตุการณ์บ้าบอนั่น โกหกเก่งขึ้นอีก 10 เท่าเลย - -"
เบื่อแล้วโว้ย ไม่เอาแล้วโว้ย
อยากเลิกโกหกให้ได้ซักที
T^T
ยิ่งช่วงนี้เศร้าบ้าบอเป็นพิเศษด้วย
ยิ่งคิดมาก ยิ่งเศร้ามากกว่าเดิมอีก
โอ้ ไอ่ความสงบ สุขุม เยือกเย็นหายไปไหนหมดเนี่ย
ไม่อยากทำตัวเองให้ไร้สาระมากไปกว่านี้อีกแล้ว
เริ่มต้นตั้งแต่นี้เลย! ปั่นจักรยานออกไปหน้าหมู้บ้าน
แล้วก็ถ่ายรูปน้ำท่วมไปฝากพ่อ (ขอมาตั้งแต่เมื่อวานละ)
"9:46"
ไม่น่าเชื่อจริงๆ ว่าน้ำจะท่วมหมู่บ้านเราได้
ก็เหมือนกับเรื่องราวในชีวิตหละมั้ง มีเรื่องไม่คาดฝันมาตลอด
ใจนึงก็โหยหาตัวตนเดิมๆ แลดูมีความสุขกว่านี้มากมาย
แต่อีกใจนึง ก็คอยบอกตัวเองว่าชีวิตต้องเดินหน้าต่อไป
ตั้งสติ แล้วก็ทำวันนี้ให้ดีที่สุดละกัน
อย่างน้อย จะได้ไม่เสียใจถ้าหันกลับมามอง!
แปลกจริง บันทึกถึงมันเป็นครั้งที่ 3 อารมณ์คนละอย่างเลยวู้ย
"5:58"
นี่ถ้าเป็นสมัยก่อนคงนึกว่าตื่นได้โดยไม่ต้องพึ่งนาฬิกาปลุก
แต่จริงๆ แล้วคือนั่งเว่นเว้อทั้งๆ ที่เป็นช่วงสอบมาตลอดคืนต่างหาก
ที่นอนไม่หลับคงเป็นเพราะช่วงนี้มีเหตุการณ์เชิงอารมณ์ต่างๆ มากมาย
ซึ่งเราคงไม่แยแสแม้แต่นิดเดียว ถ้าหากเป็นสองสามปีที่แล้วอะนะ
ก็ไม่รู้เหมือนกันว่าตนเองเปลี่ยนไปมากมายขนาดนี้ตั้งแต่เมื่อไหร่
(ให้สังเกตวันต่อวันมันคงไม่เห็น แต่พอทิ้งระยะเป็นปีๆ หละรู้เลย)
ก็ขอแสดงความเสียใจกะคุณเพื่อนด้วย ที่ไปทำพังจนสาวเมินซะได้
สุดท้ายคนที่เป็น mastermind ก็ต้องกลับไปซ่อมแซมให้สินะ
แล้วก็นะ ขอทีเถอะ กล้าๆ พูดความจริงกะตัวเองอีกหน่อยได้มั้ย
อย่าลืมว่าโกหกคนทั้งโลกได้ (ขั้นเทพ!) แต่โกหกตัวเองนั้นไม่มีวัน
ในเมื่อมองทะลุปรุโปร่งแล้วว่าต้องเจ็บ ก็ถอยออกมาแต่เนิ่นๆ เลยเซ่
ไม่ต้องอ้างโน่นนี่นั่นซื้อเวลาหรอก
เพราะสุดท้ายก็เจ็บอยู่ดี!
อะไรทำให้เราเป็นคนอย่างนี้ไปได้เนี่ย???
ยอมรับตรงๆ เลยละกัน ว่าเพราะแม่เป็นหลัก
ตอนเด็กๆ ก็โกหกเก่งพอตัวอยู่ละ (ไม่งั้นก็เจอไม้เรียวไม่เว้นวัน)
พอมาเจอกับเหตุการณ์บ้าบอนั่น โกหกเก่งขึ้นอีก 10 เท่าเลย - -"
เบื่อแล้วโว้ย ไม่เอาแล้วโว้ย
อยากเลิกโกหกให้ได้ซักที
T^T
ยิ่งช่วงนี้เศร้าบ้าบอเป็นพิเศษด้วย
ยิ่งคิดมาก ยิ่งเศร้ามากกว่าเดิมอีก
โอ้ ไอ่ความสงบ สุขุม เยือกเย็นหายไปไหนหมดเนี่ย
ไม่อยากทำตัวเองให้ไร้สาระมากไปกว่านี้อีกแล้ว
เริ่มต้นตั้งแต่นี้เลย! ปั่นจักรยานออกไปหน้าหมู้บ้าน
แล้วก็ถ่ายรูปน้ำท่วมไปฝากพ่อ (ขอมาตั้งแต่เมื่อวานละ)
"9:46"
ไม่น่าเชื่อจริงๆ ว่าน้ำจะท่วมหมู่บ้านเราได้
ก็เหมือนกับเรื่องราวในชีวิตหละมั้ง มีเรื่องไม่คาดฝันมาตลอด
ใจนึงก็โหยหาตัวตนเดิมๆ แลดูมีความสุขกว่านี้มากมาย
แต่อีกใจนึง ก็คอยบอกตัวเองว่าชีวิตต้องเดินหน้าต่อไป
ตั้งสติ แล้วก็ทำวันนี้ให้ดีที่สุดละกัน
อย่างน้อย จะได้ไม่เสียใจถ้าหันกลับมามอง!
Jul 26, 2011
เฉลยโจทย์ HLP Hackathon ด้วย Python
สืบเนื่องจากงาน HLP Hackathon อันสุดเมามันส์ได้จบไป ทางทีมงานหัวลำโพงก็ได้ปล่อยโจทย์ออกมาให้ชาว geek ที่ไม่ได้ร่วมแข่งขันมาประลองฝีมือแล้ว
เนื่องจากผมเป็นหนึ่งในผู้เข้าแข่งขันงานนี้ จึงขอนำ code ทีเขียนอย่างมึนเมาด้วย Python 3 ในวันแข่งมา review อีกรอบให้สวยงามขึ้น และคิดว่าคงมีประโยชน์อยู่บ้างสำหรับผู้ที่ยังมีพลัง code ไม่แก่กล้าพอจะได้นำไปศึกษาต่อครับ ^^
โดยผมขอเฉลยเฉพาะข้อที่ใช้ programming จริงจังนะครับ ข้อฮาๆ อย่าง sudoku ถ้าคุณหาคำตอบไม่ได้ภายใน 30 วินาทีแปลว่ายัง geek ไม่พอครับ!!! ;P (คำใบ้)
โอเค ร่ายยาวไปมันไม่ geek ถ้าพร้อมแล้วก็ลุยกันเลย!!!
{ ไปยังข้อ 6, 7, 9, 10, 11, 12, 13 }
ข้อ 6: ข้อนี้ง่ายๆ ครับ กดเครื่องคิดเลขทำมือยังได้เลย
def sixtythree(n):
if n == 0:
return '0'
m = []
while n > 0:
m.append(n%63)
n = n //63
m.reverse()
return m
map = [i for i in range(10)]
map.extend([chr(i+97) for i in range(26)])
map.extend([chr(i+65) for i in range(26)])
map.append('_')
num = 9124569914
##########
print("http://molo.me/p/", end='')
out = sixtythree(num)
for i in range(len(out)):
print(map[out[i]], end='')
ข้อ 7: ปวดหัวหน่อยนึงกับการที่ Python เป็น dynamic type เวลาลงไปยุ่งกับ bit เลยยากกว่า static type ดังนั้นการ define ฟังก์ชันสำหรับ circular shift ต้องระวังดีๆ ครับ
import re
def cshift(a, n):
n %= 8
l = a >> n
r = a << (8-n)%8
r %= 2**8
return l | r
map = [chr(96+26-i) for i in range(26)]
word = []
while True:
try:
raw = input()
except EOFError:
break
raw = re.sub('0x', '', raw)
raw = re.split(' ', raw)
for i in range(len(raw)):
raw[i] = int(raw[i], 16)
word.extend(raw)
###############
for i in range(len(word)):
word[i] = cshift(word[i], i)
word[i] -= 65
word[i] = map[word[i]]
print(word[i], end='')
ปล. ข้อนี้รับ input ทาง stdio นะครับ เขียน input เก็บเป็นไฟล์แล้วจาก terminal/command line ก็ใช้คำสั่ง python script.py < input.txt จะสะดวกขึ้นมากครับ
ข้อ 9: มาเป็นไฟล์ raw อย่างนี้ ไม่ยากเลยครับ (โดยส่วนตัวผมขี้เกียจ output เป็นรูป งานนี้ใช้ notepad เปิดไฟล์ text เอาแล้ว pan หาดีๆ นะครับ!)
p = open('input.raw', 'rb')
out = ''
for i in range(640*480):
rch = p.read(1)
if ord(rch) == 1:
out += '0'
else:
out += ' '
och = p.read(3)
if i%640 == 0:
out += '\n'
p.close()
f = open('out.txt', 'w')
f.write(out)
f.close()
ข้อ 10: ปัญหาเดียวของข้อนี้คือ อย่าทำตอนเมาเป็นอันขาด! เพราะวันแข่งไม่มี test case แบบไฟล์มาให้ ได้คีย์มือเองแล้วจะพบว่ามันนรกแตกมาก!!! (รับทาง stdio เช่นกันครับ)
import re
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a%b)
def mgcd(nlist):
a = nlist[0]
for i in range(1, len(nlist)):
a = gcd(a, nlist[i])
return a
tc = []
while True:
try:
raw = input()
except EOFError:
break
raw = re.split(', ', raw)
for i in range(len(raw)):
raw[i] = int(raw[i])
tc.append(mgcd(raw))
########
out = 0
for i in tc:
out = out ^ i
print(out)
ข้อ 11: เหมือนจะยากแต่ก็ไม่มากไปกว่าข้อ 9 เลยครับ ^_____^
p = []
for i in range(1, 5):
p.append(open('input' + str(i) + '.raw', 'rb'))
out = ''
for i in range(640*480):
same = True
chk = p[0].read(4)
for j in range(1, 4):
tmp = p[j].read(4)
if chk != tmp:
same = False
if same:
out += '0'
else:
out += ' '
if i%640 == 0:
out += '\n'
for i in range(4):
p[i].close()
f = open('out.txt', 'w')
f.write(out)
f.close()
ข้อ 12: ใช้ recursive technique แล้วชีวิตง่ายขึ้นจมครับ ใครไม่แม่นไปเทรนมาดีๆ นะครับ ^^b
ways = 0
z = 1
# 0, 4, 9, e,
map = [ [0,0,0,0,0,0,0,0,z,0,0,0,0,z,0,0,0], # 0
[0,0,0,0,z,0,0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,z,0],
[0,0,0,0,0,0,0,0,0,z,0,0,0,0,0,0,0],
[0,0,z,0,0,0,z,0,z,0,z,0,0,0,0,0,0], # 4
[0,0,0,0,0,0,0,0,z,z,0,z,0,0,0,0,0],
[z,0,0,z,0,0,0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,z,0,z,0,0,0,z,0,0,0,0,z,0],
[0,0,0,0,0,0,0,z,z,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0,0,0,z,0,0,0], # 9
[0,0,0,0,0,0,0,0,0,0,0,0,z,0,0,0,0],
[0,0,0,z,0,0,0,0,0,0,0,z,0,0,0,0,0],
[0,0,0,0,0,0,0,z,0,z,z,0,0,0,0,0,0],
[0,0,0,0,0,z,0,0,z,0,0,z,0,0,0,0,0],
[z,0,0,z,0,0,z,0,0,0,0,0,0,0,0,z,0], # e
[0,0,0,z,0,0,0,0,0,0,0,0,0,0,0,0,0],
[0,z,0,0,0,0,0,0,0,0,0,0,0,0,0,z,0] ]
def rerun(x, y):
global ways
if map[y][x] == 1:
return
if x != 16 and y != 16:
rerun(x+1, y)
rerun(x, y+1)
elif x == 16 and y != 16:
rerun(x, y+1)
elif x != 16 and y == 16:
rerun(x+1, y)
else:
ways += 1
return
#########
rerun(0, 0)
print(ways - 41604)
ปล. สำหรับผู้สนใจ Dynamic Programming สามารถดูตัวอย่างข้อนี้ได้จากบล๊อกคุณ Tanin ครับ
ข้อ 13: ข้อนี้ยากสมชื่อจริงๆ ครับ! ด้วย recursive technique บน Python ผมพบว่าสามารถหาคำตอบได้แค่ภาพที่ 1 และ 5 เท่านั้น T^T ใครมีไอเดียเด็ดๆ ไม่ให้เกิด stack overflow มาคุยกันครับ edited: แก้ไขตามคำแนะนำของคุณ Tanin โดยการเอาบรรทัดที่ 13 ออกก็แก้โจทย์ได้เลยครับ! เจ๋งจริงๆ
import re
import sys
import math
def refill(x, y, color):
if not 0 <= x < 200 or not 0 <= y < 200:
return
if color == map[y][x]:
map[y][x] = ''
refill(x+1, y, color)
refill(x, y+1, color)
refill(x-1, y, color)
# refill(x, y-1, color) # remove by @tanin47 suggestion
else:
return
if len(sys.argv) > 1:
name = sys.argv[1]
else:
name = input()
if '.bmp' not in name:
name += '.bmp'
p = open(name, 'rb')
p.read(54)
map = []
for i in range(200):
map.append([])
for j in range(200):
map[i].append(p.read(3))
p.close()
obj = 0
for y in range(200):
for x in range(200):
if map[y][x] != '':
refill(x, y, map[y][x])
obj += 1
print(math.floor(math.sqrt(obj)))
ปล. ข้อนี้ผมคิดไม่ออกในเวลานะ แต่พอกลับมาบ้านแล้วทำได้เฉยแฮะ ^^" และด้วยความที่ผมใช้ Python 3 ทำให้ยังไม่มี lib สำหรับอ่านไฟล์รูปภาพแบบ .png ดังนั้นผมจึงใช้ Paint เซฟภาพให้เป็น .bmp เอาครับ
สุดท้ายนี้ก็ May the Code be with You นะครับ สวัสดีครับ ^^
11th โชว์รูม - อวกาศ
หลายเดือนที่ผ่านมาไม่มีไรทำ
ก็วาดรูปเล่นตามประสาอินดี้อะนะ
เพราะว่าพึ่งได้เจ้าตัวนี้มา เลยมีนายแบบให้มองทุกซอกมุม
เลยเกิดความคิดว่า เอาตัวเก่ามาออกแบบท่าทางในหัวดีกว่าแฮะ
แล้วก็ไปลากเอายานจาก Star Wars มาวาดด้วย ^^
พูดถึงยานอวกาศ ก็ต้องนึกถึง Enterprise ใน Star Trek หละ
ส่วนตัวนี้เป็นหุ่น concept สร้างจาก LEGO
ปิดท้าย ระหว่างวาดก็ฟังเพลงเหล่านี้ประกอบ ^^
ก็วาดรูปเล่นตามประสาอินดี้อะนะ
เพราะว่าพึ่งได้เจ้าตัวนี้มา เลยมีนายแบบให้มองทุกซอกมุม
เลยเกิดความคิดว่า เอาตัวเก่ามาออกแบบท่าทางในหัวดีกว่าแฮะ
แล้วก็ไปลากเอายานจาก Star Wars มาวาดด้วย ^^
พูดถึงยานอวกาศ ก็ต้องนึกถึง Enterprise ใน Star Trek หละ
ส่วนตัวนี้เป็นหุ่น concept สร้างจาก LEGO
ปิดท้าย ระหว่างวาดก็ฟังเพลงเหล่านี้ประกอบ ^^
Subscribe to:
Posts (Atom)







