iT邦幫忙

0

測出來總有兩個測資沒過但找不到問題...zero judge e838

#include <iostream>
using namespace std;
int main(){
  int N;
  char x[100] [100],ans[100][100];
  cin >> N ;
  for (int i=0;i<N;i++) {
    for (int j=0;j<N;j++) cin>>x[i] [j];
  }

  for (int i=0;i<N;i++) {
    for (int j=0;j<N;j++) {
      if (x[i][j] == '*') {
        for (int k=0;k<N;k++) ans[k][j] = '*';
        for (int l=0;l<N;l++) ans[i][l] = '*';
      }
    }
  }

  for (int i=0;i<N;i++) {
    for (int j=0;j<N;j++) {
      if(ans[i][j]!='*')cout<<"0";
      else cout<<ans[i][j];
    }
    cout<<ans[i][N]<<endl;
  }
  return 0;
}

https://ppt.cc/fPPsmx

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
haward79
iT邦研究生 3 級 ‧ 2021-06-05 14:28:11
最佳解答

你的 ans 沒有初始化,因此 ans 中每個元素的初值不能保證是多少!

以下是實際測試過 Zero Judge 會 AC。

#include <iostream>

using std::cout;
using std::cin;

void printMap(int, char[100][100]);

int main()
{
    int n = 0;
    char ch = '\0';
    char map[100][100];
    char marked[100][100];

    while(cin >> n)
    {
        // Read map from stdin.
        for(int i=0; i<n; ++i)
            for(int j=0; j<n; ++j)
                cin >> map[i][j];

        // Initialize marked map.
        for(int i=0; i<n; ++i)
            for(int j=0; j<n; ++j)
                marked[i][j] = '0';

        // Mark bombs and destroyed ranges.
        for(int i=0; i<n; ++i)
        {
            for(int j=0; j<n; ++j)
            {
                if(map[i][j] == '*')
                {
                    // Mark row.
                    for(int k=0; k<n; ++k)
                        marked[i][k] = '*';

                    // Mark column.
                    for(int k=0; k<n; ++k)
                        marked[k][j] = '*';
                }
            }
        }

        printMap(n, marked);
    }
}

void printMap(int n, char map[100][100])
{
    for(int i=0; i<n; ++i)
    {
        for(int j=0; j<n; ++j)
            cout << map[i][j];

        cout << "\n";
    }
}

== Tips ==

  1. 建議變數都應該初始化!
  2. 適當的為程式加上註解。
  3. 注意 Coding Style。

我要發表回答

立即登入回答