Universal Cup Judging System

Universal Cup

Süre Sınırı: 1 s Bellek Sınırı: 2048 MB Toplam puan: 100 Zorluk: [göster] Etkileşimli Hack'lenebilir ✓
İstatistikler

โจทย์ข้อนี้เป็นโจทย์แบบโต้ตอบ (interactive problem)

Little Cyan Fish มีจำนวนเต็มลับ $a$ ($1 \le a \le 100$) คุณต้องหาจำนวนเต็มนี้ให้พบ

ในการถามหนึ่งครั้ง คุณเลือกจำนวนเต็ม $x$ หนึ่งจำนวน Little Cyan Fish จะบอกคุณว่า $x$ เท่ากับจำนวนเต็มลับของเขาหรือไม่ จงหาจำนวนเต็มลับโดยใช้การถามไม่เกิน $100$ ครั้ง

การโต้ตอบ

ในการถามหนึ่งครั้ง ให้พิมพ์หนึ่งบรรทัดในรูปแบบต่อไปนี้: "$?\ x$" เมื่อ $x$ เป็นจำนวนเต็ม ($1 \le x \le 100$) สำหรับการตอบกลับของคำถามนั้น คุณจะได้รับคำศัพท์เพียงคำเดียวคือ yes หรือ no ซึ่งหมายความว่า $x = a$ หรือ $x \ne a$ ตามลำดับ คุณต้องตรวจสอบให้แน่ใจว่าจำนวนครั้งของการถามที่คุณทำไม่เกิน $100$ ครั้ง

ในการรายงานคำตอบ ให้ส่งออกหนึ่งบรรทัดในรูปแบบต่อไปนี้: "$!\ x$" เมื่อ $x$ คือจำนวนเต็มลับ การรายงานคำตอบจะไม่ถูกนับเป็นการถาม การได้รับ yes ไม่ได้ทำให้การโต้ตอบสิ้นสุดลง: คุณยังคงต้องรายงานคำตอบ โปรแกรมของคุณต้องหยุดทำงานทันทีหลังจากรายงานคำตอบ หลังจากส่งออกคำถามหรือรายงานคำตอบแล้ว อย่าลืมส่งออกอักขระขึ้นบรรทัดใหม่และล้างบัฟเฟอร์ข้อมูลส่งออก (flush output stream)

ในโจทย์ข้อนี้ โปรแกรมโต้ตอบไม่ได้เป็นแบบปรับเปลี่ยนตามคำถาม (not adaptive) จำนวนเต็มลับถูกกำหนดไว้ตายตัวก่อนที่การโต้ตอบจะเริ่มต้นขึ้น และจะไม่เปลี่ยนแปลงในระหว่างการโต้ตอบ

ตัวอย่าง

ข้อมูลนำเข้า 1

no

no

yes

ข้อมูลส่งออก 1

? 1

? 2

? 3

! 3

หมายเหตุ

ในตัวอย่างแรก จำนวนเต็มลับคือ $3$ การถามด้วย $x = 1$ และ $x = 2$ ได้รับ no และการถามด้วย $x = 3$ ได้รับ yes จากนั้นโปรแกรมจึงรายงาน ! 3

ในตัวอย่างที่สอง จำนวนเต็มลับคือ $1$ การถามครั้งแรกได้รับ yes และโปรแกรมจึงรายงาน ! 1

เครื่องมือทดสอบ: มีเครื่องมือทดสอบเตรียมไว้ให้เพื่อช่วยผู้เข้าแข่งขันในการพัฒนาและทดสอบคำตอบของตนเอง คุณสามารถดาวน์โหลดเครื่องมือนี้ได้จากไฟล์แนบ การสั่งทำงานเครื่องมือด้วยตัวเลือก -h จะอธิบายวิธีการใช้งาน เครื่องมือนี้จะตรวจสอบการโต้ตอบและคำตอบที่รายงาน แต่จะไม่บังคับใช้ขีดจำกัดเวลาหรือหน่วยความจำ

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.