【題解】ZeroJudge e838: P5. 炸彈超人(Bombs)

【題目敘述】https://zerojudge.tw/ShowProblem?problemid=e838
TOI 新手同好會 歷屆考題

#include <iostream>
using namespace std;

int n, ans[105][105];
string s;

int main() {
    cin >> n;
    for (int i = 1; i <= n; i++){
        cin >> s;
        for (int j = 1; j <= n; j++){
            if (s[j-1] == '*'){
                for (int k = 1; k <= n; k++){
                    ans[i][k] = 1;
                    ans[k][j] = 1;
                }
            }
        }
    }
    for (int i = 1; i <= n; i++){
        for (int j = 1; j <= n; j++){
            if (ans[i][j]) cout << '*';
            else cout << '0';
        }
        cout << "\n";
    }
}

Python code (credit: Amy Chou)

n = int(input())
A = []
for i in range(n):
    A.append(list(input()))

B = [[0 for i in range(n)] for j in range(n)]
for i in range(n):
    for j in range(n):
        if A[i][j] == "*":
            for k in range(n):
                B[i][k] = "*"
                B[k][j] = "*"
for i in range(n):
    for j in range(n):
        print(B[i][j], sep="", end="")
    print()
分享本文 Share with friends