บทนำ
คุณเพิ่งตอบรับข้อเสนองานที่ บริษัท ซอฟต์แวร์สวย ๆ คุณพอใจกับขนาดของสำนักงานของคุณ แต่คุณมีขนาดใหญ่ที่สุดสำนักงานหรือไม่? มันยากที่จะบอกจากเพียงแค่ดวงตาของเพื่อนร่วมงานของคุณเมื่อคุณหยุด วิธีเดียวที่จะเข้าใจสิ่งนี้คือการตรวจสอบพิมพ์เขียวสำหรับอาคาร ...
งานของคุณ
เขียนโปรแกรมสคริปต์หรือฟังก์ชั่นที่ใช้แผนผังชั้นอาคารของคุณและระบุว่าสำนักงานของคุณใหญ่ที่สุดหรือไม่ แผนชั้นง่ายต่อการอ่านเพราะอาคารเป็นnโดยnตาราง
อินพุตจะประกอบด้วยบรรทัดที่มีการ จำกัดn + 1 \n
บรรทัดแรกจะมีหมายเลขnอยู่ ถัดไปnเส้นจะแขวะสำหรับอาคาร อินพุตตัวอย่างง่ายๆ:
6
......
. . .
.X . .
. . .
. . .
......
กฎสำหรับผังมีดังนี้:
.
(ASCII 46) จะถูกใช้เพื่อแสดงถึงกำแพง(Space [ASCII 32]) จะถูกใช้เพื่อแสดงพื้นที่ว่าง
- คุณเป็นตัวแทนของ
X
(ASCII 88) คุณอยู่ในสำนักงานของคุณ - แปลนห้องจะเป็นnเส้นโดยแต่ละตัวมีอักขระnตัว
- ตัวอาคารล้อมรอบด้วยกำแพงทุกด้าน นี่หมายความว่าอินพุตบรรทัดที่ 2 (บรรทัดแรกของแปลนห้อง) และบรรทัดสุดท้ายของอินพุตจะเป็น
.
s ทั้งหมด นอกจากนี้ยังแสดงให้เห็นว่าตัวอักษรตัวแรกและตัวสุดท้ายของทุกแผนผังแปลนจะเป็น.
s - ขนาดสำนักงานถูกกำหนดให้เป็นผลรวมของช่องว่างที่อยู่ติดกัน (ต่อเนื่องกันโดยการเคลื่อนที่ใน 4 ทิศทางคือ N, S, E, W โดยไม่ต้องผ่านกำแพง)
- สำหรับจุดประสงค์ของขนาดสำนักงานเครื่องหมาย X ที่คุณนับว่าเป็น
(พื้นที่เปิดโล่ง)
- 4 <= n <= 80
คุณควรส่งออกว่าสำนักงานของคุณใหญ่กว่าสำนักงานอื่น ๆ หรือไม่ เอาต์พุตสามารถเป็นอะไรก็ได้ที่บ่งบอกถึงความจริงหรือเท็จในภาษาการเขียนโปรแกรมที่คุณเลือกอย่างไม่น่าสงสัยและปฏิบัติตามอนุสัญญามาตรฐานที่เป็นศูนย์, ไม่มีค่า, และไม่มีความหมายที่ว่างเปล่า True หมายถึงสำนักงานของคุณนั้นใหญ่ที่สุดอย่างเคร่งครัด
ตัวอย่างเอาต์พุตสำหรับอินพุตด้านบน:
1
เนื่องจากที่ทำงานของคุณคือ 8 ตารางฟุตและที่ทำงานอีกแห่งหนึ่งคือ 4 ตารางฟุต
แนวทาง I / O
- อินพุตอาจถูกอ่านจาก stdin และตอบเอาต์พุตไปยัง stdout
หรือ
- อินพุตอาจเป็นอาร์กิวเมนต์สตริงเดี่ยวของฟังก์ชันและ answer เป็นค่าส่งคืนของฟังก์ชันนั้น
คำถามที่พบบ่อย
- ทั้งอาคารประกอบด้วยผนังและสำนักงาน
- อาคารมีเพียงชั้นเดียว
- มีการรับประกันว่าจะเป็น X ในอินพุต แต่ไม่รับประกันว่าจะมีช่องว่างใด ๆ คุณอาจมีสำนักงาน 1x1 และอาคารที่เหลือเป็นผนัง (คุณมีสำนักงานที่ใหญ่ที่สุด! ไชโย!)
ตัวอย่างอื่น ๆ
10
..........
. . . .
. . . .
. . . .
. .. . .
.. .
..........
. X .
. .
..........
ที่นี่มีสำนักงาน 3 แห่งสำนักงานภาคใต้ของคุณเป็นรูปสี่เหลี่ยมผืนผ้าสำนักงานภาคตะวันตกเฉียงเหนือเป็นรูปสามเหลี่ยม (ish) และสำนักงานภาคตะวันออกเฉียงเหนือเป็นรูปแบบที่ผิดแปลก แต่ใหญ่กว่าของคุณ ผลลัพธ์ควรเป็นเท็จ
นี่คือความท้าทายในการเขียนรหัสที่สั้นที่สุดและมีความสุขในการเล่นกอล์ฟ !
X
อนุญาตในอินพุตได้ :)