程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> acm-ACM練習題-----又是蘋果

acm-ACM練習題-----又是蘋果

編輯:編程綜合問答
ACM練習題-----又是蘋果

1001: 又是蘋果

題目描述

最近,亮亮和小W都對蘋果很感興趣!在研究了“最大蘋果矩陣”和“給蘋果樹施肥”的問題後,他們又遇到了一個新的問題:

有一塊長n米、寬m米的地,現在小W把地劃分成邊長1米的小正方形塊,共n*m個塊。每個塊中可能種有一棵蘋果樹,或放有一個iPhone,也可以什麼也沒有。然而,亮亮擁有一種超能力,可以將2個寬1米、長度相同的矩形塊在空間中直接交換。

亮亮經常對著農場施展超能力,為了不把自己搞暈,他每次總是選擇兩整行(長度均為m米)或兩整列(長度均為n米)進行交換。小W對此十分惱火——當他想拿iPhone打游戲時,卻莫名其妙地撞在了蘋果樹上。小W要求你寫一個程序,幫助他確定某一正方形塊中放了什麼東西。
輸入

輸入包含多組數據,請處理到文件結束。
每組數據,第一行2個整數n、m,表示地的尺寸。
之後n行,每行m個英文字母,大寫的T表示這裡種有蘋果樹,小寫的i表示這裡放有iPhone,其他字符表示這裡什麼也沒有。
之後1行,一個整數Q,表示小W詢問的次數。
之後Q行,包含3個整數,可能有以下情況:
1 i1 j1 表示小W想知道第i1行第j1列的方塊中有什麼東西。
2 i1 i2 表示亮亮交換了第i1行與第i2行。
3 j1 j2 表示亮亮交換了第j1列與第j2列。
對於100%的數據,有1<=n*m<=106,1<=Q<=105,1<=i1, i2<=n,1<=j1, j2<=m。
輸出

對於每組數據,輸出以一行“Case #x:”開頭,x表示數據的編號,從1開始。
對於小W的每次格式為“1 i j”的詢問,輸出一行。若方塊中是蘋果樹,輸出"Tree"。若方塊中是iPhone,輸出“Phone”。若方塊中什麼也沒有,輸出“Empty”。
樣例輸入

2 2
Ti
Ti
2
1 1 1
1 2 2
3 3
Tct
Iai
qqT
3
1 1 3
2 1 2
1 1 3

樣例輸出

Case #1:
Tree
Phone
Case #2:
Empty
Phone

最佳回答:


http://blog.csdn.net/acvcla/article/details/38783321

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved