神奇解法居然0ms过

P1162 填涂颜色

"```cpp "<code> "```
by 小粉兔 @ 2018-06-23 14:52:22


把引号去掉即可 示例: ```cpp #include<cstdio> int main(){ printf("%d",666); return 0; } ```
by 小粉兔 @ 2018-06-23 14:53:15


$6666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666$
by pascalfans @ 2018-06-23 14:55:20


```cpp # include<stdio.h> # include<string.h> # include<stdlib.h> # include<math.h> using namespace std; int mapp[50][50]; struct fw { int l,r; }; fw h[50],s[50];//h:同行不同列 int main() { int n,i,j;//1<=n<=30 scanf("%d",&n); for(i=1;i<=n;i++) { for(j=1;j<=n;j++) { scanf("%d",&mapp[i][j]); } } for(i=1;i<=n;i++) { h[i].l=0; h[i].r=n+1; s[i].l=0; s[i].r=n+1; } for(i=1;i<=n;i++)//先处理h { for(j=1;j<=n;j++) { if(mapp[i][j]==1)break; } h[i].l=j; for(j=n;j>=1;j--) { if(mapp[i][j]==1)break; } h[i].r=j; } for(i=1;i<=n;i++)//再处理s { for(j=1;j<=n;j++) { if(mapp[j][i]==1)break; } s[i].l=j; for(j=n;j>=1;j--) { if(mapp[j][i]==1)break; } s[i].r=j; } // //for(i=1;i<=n;i++) //{ // printf("h[%d].l=%d,h[%d].r=%d\n",i,h[i].l,i,h[i].r); //} //for(i=1;i<=n;i++) //{ // printf("s[%d].l=%d,s[%d].r=%d\n",i,s[i].l,i,s[i].r); //} // for(i=1;i<=n;i++) { for(j=1;j<=n;j++) { if(mapp[i][j]==0&&i>s[j].l&&i<s[j].r&&j>h[i].l&&j<h[i].r) { mapp[i][j]=2; } } } for(i=1;i<=n;i++) { for(j=1;j<=n;j++) { if(j<n)printf("%d ",mapp[i][j]); else printf("%d",mapp[i][j]); } printf("\n"); } return 0; ```
by 向noip冲刺 @ 2018-06-23 15:24:00


话说这道不一般都是0ms么
by little_gift @ 2018-06-23 15:39:47


|