滴滴出行2017春招算法工程师笔试题b卷岛屿问题
我的代码如下,本地能通过,但上传后通过率0%,希望大神给指出错误。
#include<iostream> #define N 10 #define M 10 using namespace std; int a[N][M]; int main(){ int n, m; cin >> n >> m; int i, j; for(i=0; i<n; ++i){//输入 for(j=0; j<m; ++j){ int x; //cin >> x; scanf("%1d", &x); a[i][j] = x; } fflush(stdin); } /* for(i = 0; i < n; i++){ for(j = 0; j < m; j++){ int x; scanf("%d",&x); a[i][j]= x; } } */ for(i=0; i<n; ++i){//横向 for(j=m-1; j>0; --j){ if(a[i][j] == 1){ if(a[i][j-1] == 1) a[i][j] = 0; } } } for(j=0; j<m; ++j){//纵向 for(i=n-1; i>0; --i){ if(a[i][j] == 1){ if(a[i-1][j] == 1) a[i][j] = 0; } } } int sum = 0;//求和 for(i=0; i<n; ++i) for(j=0; j<m; ++j) if(a[i][j] == 1) ++sum; cout << sum << endl; /*调试用 for(i=0; i<n; ++i){ for(j=0; j<m; ++j){ cout << a[i][j] << ' '; } cout << endl; } */ return 0; }