1050 : Chemical Reactant Problem type : Batch Time limit : 1.0 second(s) Memory limit : 16 megabyte(s)
ศูนย์วิจัยแห่งหนึ่งสร้างสารเคมีด้วยการผสมสารตั้งต้นสองชนิดเข้าด้วยกัน สารตั้งต้นแต่ละตัวมีคุณสมบัติอยู่ P ชนิด โดยเรียกเป็นคุณสมบัติที่ 1 ถึงคุณสมบัติที่ P ในการผสมสารตั้งต้นสองชนิดเข้าด้วยกันนั้นจะให้สารผลลัพธ์ที่มีคุณสมบัติที่ i เท่ากับผลรวมของคุณสมบัติที่ i ของสารตั้งต้นสองชนิด ตัวอย่างเช่น ถ้าสารตั้งต้นที่หนึ่งมีคุณสมบัติที่ 3 เท่ากับ 5 และสารตั้งต้นที่สองมีคุณสมบัติที่ 3 เท่ากับ 7 สารผลลัพธ์ที่ได้จะมีคุณสมบัติที่ 3 เท่ากับ 12
นักวิจัยคนหนึ่งต้องการสารที่มีคุณสมบัติตามต้องการ แต่ในโกดังเก็บสารตั้งต้นมีสารอยู่ถึง N ตัว ให้คุณเขียนโปรแกรมเพื่อหาว่าในโกดังนั้นมีสารที่เขาต้องการหรือไม่ หรือถ้าไม่มี สามารถสร้างสารนั้นได้จากการผสมสารสองชนิด (ที่เป็นคนละสารกัน) ในโกดังได้หรือไม่
ข้อมูลนำเข้า
อ่านข้อมูลจาก standard input บรรทัดแรกมีจำนวนเต็มสองจำนวน N P (1 <= N <= 100,000; 1 <= P <= 10) จากนั้นอีก N บรรทัดจะเป็นข้อมูลของสารตั้งต้นที่มีในโกดัง กล่าวคือในบรรทัดที่ 1+ i จะเป็นข้อมูลของสารที่ iซึ่งประกอบไปด้วยจำนวนเต็มบวก P จำนวน จำนวนที่ j ระบุคุณสมบัติที่ j ของสารที่ i ข้อมูลรับประกันว่าไม่มีสารตั้งต้นสองสารใด ๆ ที่มีคุณสมบัติทั้ง P ชนิดเท่ากันทั้งหมด จากนั้นในบรรทัดที่ 2 + N ซึ่งเป็นบรรทัดสุดท้ายของข้อมูลป้อนเข้า จะระบุคุณสมบัติของสารที่ต้องการ โดยระบุเป็นจำนวนเต็ม P จำนวน
ข้อมูลส่งออก
ถ้ามีสารที่มีคุณสมบัติตรงตามที่ต้องการ (โดยไม่ต้องผสม) ให้พิมพ์หมายเลขของสารนั้นออกทาง standard output ถ้าไม่มีสารที่มีคุณสมบัติตามต้องการ แต่สามารถสร้างได้จากการผสมสารตั้งต้นสองชนิด (ที่ไม่ซ้ำกัน) ให้พิมพ์หมายเลขของสารทั้งสองออกมา โดยพิมพ์หมายเลขของสารที่มีหมายเลขน้อยกว่าก่อน ถ้าไม่สามารถสร้างได้ให้ตอบ NO