Bangkok Christmas Codewar 2020

Monpriya Tammavong
2 min readDec 19, 2020

--

I think I really happy with coding ❤

วันนี้ไป event นี้มาล่ะะ ขอเล่าเรื่องตลกก่อน คือบอกคนอื่นทั้งวีคเลย ว่าวันอาทิตย์มี event นะ ไม่ว่างละก็ท่องมาตลอดว่า วันอาทิตย์ๆ พอบ่ายโมงสิบนาที นอนเล่นเฟสอยู่มีแจ้งเตือน event คิดในใจ “เออดีเนอะ แจ้งเตือนล่วงหน้าตั้งวันนึง เข้าไปดูหน่อยดีกว่า ว่าพรุ่งนี้ต้องออกกี่โมง” ก็เลื่อนๆ ดู ลงทะเบียนบ่ายสองถึงบ่ายสองครึ่ง อุ้ว ที่ไหนนะ AIS Design Centre วันที่ 19 เอ๊ะ พน 20 วันนี้วันอะไรนะ กี๊ดดดดด รีบทัก telegram ไปหาพี่ๆ ที่นัดกันไว้ 555555 ต้องขอบคุณพี่ neizod ที่มาชวนเราด้วยน้าาา กลับมาต่อก็คืออาบน้ำอย่างเร่งรีบ ไปถึงประมาณบ่ายสองเกือบครึ่ง เค้าจะเริ่มอยู่แล้ว เข้าไปหาที่นั่งไม่ด้วย คนอย่างเยอะ สรุปจาก 4 คนที่นัดกันมาแค่ 2 คน 555555 ไม่เป็นไร เราจะสู้ !

อันนี้คือจะมาเล่าโจทย์ให้ฟังน่ะ ส่วนความรู้สึกที่ได้ไปแข่งก็ คุ้มมมมมมม รู้สึกสนุกมากๆ ก็ยังรู้สึกสนุกกับการเขียนโปรแกรมเหมือนเดิม รู้สึกว่าเด็กๆ เยอะมากเลย มีความน่ารักที่แม่มาเฝ้าน้องเขียนโปรแกรม แล้วก็ทีมที่ชนะก็เด็กกว่าเรานะ ทำให้รู้สึกว่า สดใสจังเลยนะ ชุ่มชื่นหัวใจฉุดๆ เจอคนรู้จักด้วยย ทุกคนก็ดูสนุกเหมือนเดิม :) ชอบความรู้สึกนี้จังเลยยยยยยย เอาล่ะ มาดูโจทย์กัน

เริ่มที่รอบแรก Qualification เค้าให้ 6 คนแรกที่เสร็จเร็วสุดมีสิทธิ์ตั้งทีม แต่คือตอนนั้นล่กจัด 555555 ดีที่พี่เนยทำทัน แหะๆ ความจริงโจทย์ไม่ได้ยากเรย โจทย์คือ

CODEWAR encode ได้เป็น DQGIBGY

ก็คือ

C + 1 = D

O + 2 = Q

ไปเรื่อยๆ โจทย์คือ decode อันนี้ให้หน่อยย UJHTFYZEXBORBFIXVINUGECGBAUKRRWUBVMSDFVUTHYGKMZAICOHBPW

ถ้ามันเกิน A หรือ Z ให้น้องวนกลับมา

หลังจากเราผ่าน Qualification ก็จะถูกจับไปนั่งบนเวที แง้ อย่างตื่นเต้นอ่ะ 555555 ละแข่งกับอีกทีมนึง แบบแพ้คัดออกเลย อ๋อ เราได้สมาชิกคนที่ 3 มาด้วยล่ะ คือคุณ Chris Hall เขียน python เหมือนกัน ก็เลยมาอยู่ด้วยกัน คำถามรอบที่ 2 ที่เราเจอคือ ถามว่ามี list ของไพ่หลายสำรับมาให้ ใบที่หายไปคือใคร ง่ายมะ ก็คือ เน้นความเร็วอย่างเดียว ใครพิมพ์เร็วชนะ เพิ่งเคยมาครั้งแรกอ๊ะ ไม่รู้ว่าเค้าเล่นกันแบบนี้ 5555555 [อันนี้ไม่มี test case ล่ะ เพราะว่าตอนขึ้นไปบนเวทีให้ใช้คอมแค่เครื่องเดียว]

โจทย์ข้อต่อไปเป็น Qualification ที่ทีมอื่นขึ้นไปแข่ง

input: (((())()))(())()((((()(()))()))))(()(())(()(())(())()))

น้องวงเล็บตำแหน่งไหนที่ไม่มีคู่กันนะ โถ่น้อน เป็นคนไม่มีคู่ มุแง

โจทย์ข้อต่อไปเป็น Qualification ที่ทีมอื่นขึ้นไปแข่งเหมือนกัน มี dict ชื่อรัฐกับคะแนนมาให้ ก็คือคะแนนที่พรรคที่ชนะ ชนะในรัฐนั้น แล้วก็มี list ของรัฐที่พรรคสีแดงชนะมาให้ แล้วถามว่า diff ของคะแนนรวมของทั้ง 2 สีต่างกันเท่าไหร่

โจทย์ข้อต่อไปเป็น Qualification ที่ทีมอื่นขึ้นไปแข่งเหมือนกัน บอกว่าจังหวัดที่จะไปต่อไป ต้องเป็นตัวอักษรตัวสุดท้ายของจังหวัดก่อนหน้า เช่น เริ่มที่ BANGKOK คนต่อไปเป็น KUALA LUMPUR มี list มาให้แล้วถามว่า ถ้าเริ่มจาก BANGKOK จบที่ใครน้า

รอบต่อไปคือตกรอบล่ะ 555555 โจทย์รอบนี้คือ มี list ของ string ที่เป็นชื่อทีมฟุตบอลใน Thai League โจทย์เล่าว่าปีนี้ติด covid เลยไม่ได้เตะ ก็เลยให้เอาแต่ละทีมแข่งแบบพบกันหมด แล้วตัดสินโดย

md5(team1 + team2) > md5(team2 + team1) ถ้าเป็นแบบนี้ team1 ชนะ

ให้หาว่า team ไหนที่ชนะแค่ 3 match แง้ ทำไม่ทัน อีกทีมทำเร็วกว่าา ฮือออ เอา md5 มาเทียบไม่เป็น 555555 ต้อง encode ก่อนแล้วค่อยเอาค่าออกมา ไม่เป็นไรนะๆๆ

แต่เราก็ยังทำโจทย์ข้ออื่นต่อไปเรื่อยๆ ข้อนี้โจทย์สนุกกก บอกว่าเราเขียนจดหมายเรียกค่าไถ่ เนื้อหาเป็น text แบบนี้ แต่ว่ากลัวคนจำลายมือได้ เราก็เลยตัดแปะตัวอักษรจาก magazine [file text ที่มีมาให้] แบบสมมติตัว a ก็ตัดตัว A จาก magazine ไปแปะในจดหมาย สนใจแค่ตัวอักษรนะ ตัวพิมพ์เล็กพิมพ์ใหญ่ให้เป็นตัวเดียวกัน คำถามคือ จะสร้างจดหมายได้กี่อัน อันนี้ชอบเป็นการส่วนตัวว 555555

ข้อสุดท้ายแน้ววว โจทย์ final ล่ะ มีภาพปลากรอบบบ

แผนที่ รฟฟ น่ะ

ถ้าเรามี list [E2, E1, S2] จะได้ผลลัพธ์เป็น 4 ก็คือ E2 ไป E1 นับ 1, E1 ไป S2 นับ 3 รวมกันเป็น 4 ง่ายป่ะ ก็คือลองทำแบบจริงจัง ก็แพ้ทีมที่ได้ที่ 1 อยู่ดี แง้ เร็วไม่พอออออ

จบไปแล้วสำหรับการเล่าโจทย์ให้ฟัง เป็น event ที่ดีจริงๆ เลยน้าาาา อ๋อ คุณ Chris ถามด้วยว่า เล่น adventofcode ป่าว เราก็บอกยังติดอยู่เลย แล้วเค้าก็ชวนคุยว่า มีคนทำ visualize ของวันนู้นวันนี้ด้วยนะ อันนี้แค่อยากเล่าเฉยๆ 555555 เพราะฉะนั้นตอนนี้เราไปเขียน https://adventofcode.com/ ที่เราดองไว้กันเถอะ สำหรับวันนี้ขอลาไปก่อน ปีหน้าอยากให้ทุกคนไปเล่นด้วยกันนะ ❤

ลืมมมมมม ขอบคุณทุกคนที่จัดงานนะคะ มีเลี้ยงพิซซ่า kfc ขนม น้ำ แล้วมี after party ด้วยยย แต่ไม่ได้ไป แหะๆ เลย review ไม่ได้ แต่ยังไงก็ขอบคุณมากๆ เลยค่ะ

คุณขนมผิงล่ะ งื้ออออ

--

--

Monpriya Tammavong

Developer Consultant at ThoughtWorks CPE29 E71 KU75 YWC16 ..want to be a programmer..