提交时间:2023-11-25 08:34:39

运行 ID: 111869

#include<bits/stdc++.h> using namespace std; int last=0; void s(int,int); int main() { int i; cin>>i; bool map[i+1][i+1]; for (int a=1;a<=i;a++) { for (int b=1;b<=i;b++) { cin>>map[a][b]; } } s(i,i); return 0; } void s(int q,int p) { if (q==1&&p==1) { cout<<last; return; } if (q==1) { if (map[q][p-1]==0) last+=s(q,p-1); return; } if (p==1) { if (map[q-1][p]==0) last+=map[q-1][p]; return; } if (map[q-1][p]==0) last+=s(q-1,p); if (map[q][p-1]==0) last+=s(p,q-1); return; }