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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

L - 病毒扩散(暴力)

發布時間:2025/3/21 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 L - 病毒扩散(暴力) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Description
2019-ncov的突然出現擾亂了人們的日常生活,它具有極強的傳染性,可以快速的在人群中擴散,現在研究人員正在模擬其在人群中的擴散情況.
在一個n*m矩陣所示的人群中,*為普通人,#為佩戴口罩的人,@為病毒攜帶者,已知每秒每位病毒攜帶者會將病毒傳染給相鄰八個方向的未戴口罩的普通人。請問 x 秒后會有多少名傳染者(初始為第0秒)?
Input
第一行輸入空格分隔的三個數n,m,x代表n行,m列的空間,x秒(n,m<=1000)。
接下來n行每行m人如上述所示。
Output
一個數字,代表最終被傳染的人數。

Sample
Input

4 4 2 **** *@** **## **#*

Output

12 #include<bits/stdc++.h>using namespace std;const int N = 1111;char mp[N][N];//存圖 int dp[N][N];//標記數組int main() {int n, m, x;cin >> n >> m >> x;int cnt = 0;memset(dp, 0, sizeof(dp));for(int i = 0; i < n; i++){for(int j = 0; j < m; j++){cin >> mp[i][j];if(mp[i][j] == '@')cnt++;}}int pos = 0;//當前的秒數while(x--){for(int i = 0; i < n; i++){for(int j = 0; j < m; j++){if(mp[i][j] == '@' && dp[i][j] == pos){if(mp[i - 1][j] == '*')//上{mp[i - 1][j] = '@';dp[i - 1][j] = pos + 1;cnt++;}if(mp[i + 1][j] == '*') //下{mp[i + 1][j] = '@';dp[i + 1][j] = pos + 1;cnt++;}if(mp[i][j - 1] == '*')//左{mp[i][j - 1] = '@';dp[i][j - 1] = pos + 1;cnt++;}if(mp[i][j + 1] == '*')//右{mp[i][j + 1] = '@';dp[i][j + 1] = pos + 1;cnt++;}if(mp[i - 1][j - 1] == '*')//左上{mp[i - 1][j - 1] = '@';dp[i - 1][j - 1] = pos + 1;cnt++;}if(mp[i - 1][j + 1] == '*')//右上{mp[i - 1][j + 1] = '@';dp[i - 1][j + 1] = pos + 1;cnt++;}if(mp[i + 1][j - 1] == '*')//左下{mp[i + 1][j - 1] = '@';dp[i + 1][j - 1] = pos + 1;cnt++;}if(mp[i + 1][j + 1] == '*')//右下{mp[i + 1][j + 1] = '@';dp[i + 1][j + 1] = pos + 1;cnt++;}}}}pos++;}cout << cnt << endl;return 0; }

總結

以上是生活随笔為你收集整理的L - 病毒扩散(暴力)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。