日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

#64-【模拟】屠城(zly#3)

發(fā)布時(shí)間:2023/12/18 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 #64-【模拟】屠城(zly#3) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Description

當(dāng)阿爾薩斯到達(dá)斯坦索姆的同時(shí),光明使者烏瑟爾也及時(shí)趕來。但這時(shí)眾人駭然發(fā)現(xiàn)一切都已經(jīng)太晚了——被瘟疫感染的谷物已經(jīng)發(fā)放到市民手中!
這些無辜的市民必將會(huì)感染瘟疫而成為天災(zāi)軍團(tuán)的部隊(duì)。于是阿爾薩斯命令烏瑟爾和白銀之手騎士團(tuán)屠殺市民。當(dāng)烏瑟爾拒絕執(zhí)行這個(gè)命令時(shí),阿爾薩斯竟然宣判德高望重的光明使者叛國。心灰意冷的烏瑟爾和他麾下的圣騎士憤然離城。而吉安娜也極其失望地離開。在最絕望無助的時(shí)候,沒有人愿意支持年輕王子的抉擇,留給他的只剩下無盡的痛苦。盡管眾叛親離,阿爾薩斯還是將他的計(jì)劃付諸實(shí)施。他命令士兵將感染瘟疫的無辜市民屠戮殆盡,并把城內(nèi)所有的建筑燒得一干二凈!但是同時(shí),恐懼魔王梅爾甘尼斯也正在將市民們轉(zhuǎn)化為不死族。
給出斯坦索姆的地圖和阿爾薩斯與梅爾甘尼斯的位置,每分鐘阿爾薩斯和梅爾甘尼斯會(huì)在部隊(duì)所在的地方屠殺市民,當(dāng)房子燒毀后,阿爾薩斯會(huì)派他的軍隊(duì)向4個(gè)房屋未燒毀的方向(上下左右)移動(dòng)。阿爾薩斯想知道是他還是梅爾甘尼斯殺的比較快,于是要求你這位御用編程師將k分鐘后的情況給他。注意:如果阿爾薩斯和梅爾甘尼斯相遇,則阿爾薩斯會(huì)擊退梅爾甘尼斯再燒毀房屋。

?

Input

輸入文件名為massacre.in。
輸入的第一行包含兩個(gè)數(shù)n、m和k,表示城市的長、寬和阿爾薩斯想知道情況的時(shí)間。
接下來n行,每行m個(gè)字符(中間無空格),‘A’表示阿爾薩斯,‘M’表示梅爾甘尼斯,‘#’表示墻,‘.’表示房子。

?

Output

輸出文件名為massacre.out。
輸出k分鐘后的情況,被阿爾薩斯消滅的房子用‘a(chǎn)’表示,梅爾甘尼斯的用‘m’表示。?

?

Sample Input

5 5 4 A.... ..... ..... ..... ....M

Sample Output

Aaaaa aaaam aaamm aammm ammmM

HINT

【數(shù)據(jù)說明】
對(duì)于100%的數(shù)據(jù),1<=n,m<=500,k的范圍保證有解(反正開int就夠了)。

一個(gè)很久以前AC的題

當(dāng)時(shí)不知道什么叫隊(duì)列,直接模擬!

#include <iostream>#define SIZE 1000using namespace std;char c[SIZE][SIZE];int main() {int n, m, t, i, j;cin >> n >> m >> t;for (i = 0; i < n; i++){for (j = 0; j < m; j++){cin >> c[i][j];}}while (t--){for (i = 0; i < n; i++) // 大模擬{for (j = 0; j < m; j++){if ((c[i][j] == 'A') || (c[i][j] == 'a')){if ((i > 0) && (c[i-1][j] == '.')){c[i-1][j] = '&'; // 反正就這樣處理(很暴力)}if ((i < n - 1) && (c[i+1][j] == '.')){c[i+1][j] = '&';}if ((j > 0) && (c[i][j-1] == '.')){c[i][j-1] = '&';}if ((j < m - 1) && (c[i][j+1] == '.')){c[i][j+1] = '&';}}}}for (i = 0; i < n; i++){for (j = 0; j < m; j++){if ((c[i][j] == 'M') || (c[i][j] == 'm')){if ((i > 0) && (c[i-1][j] == '.')){c[i-1][j] = '*';}if ((i < n - 1) && (c[i+1][j] == '.')){c[i+1][j] = '*';}if ((j > 0) && (c[i][j-1] == '.')){c[i][j-1] = '*';}if ((j < m - 1) && (c[i][j+1] == '.')){c[i][j+1] = '*';}}}}for (int i = 0; i < n; i++) // 為了防止a.......一步變成aaaaaaaa......{for (int j = 0; j < m; j++){if (c[i][j] == '&'){c[i][j] = 'a';}else if (c[i][j] == '*'){c[i][j] = 'm';}}}}for (i = 0; i < n; i++){for (j = 0; j < m; j++){cout << c[i][j];}cout << endl;}return 0; }

?

總結(jié)

以上是生活随笔為你收集整理的#64-【模拟】屠城(zly#3)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。