• hdu 1241 Oil Deposits


      水题,求连通分量的个数,深搜一遍即可,之所以这么水还写下来,是因为样例一组有误的数据弄得我调试了一个多小时,白白浪费了很多精力和时间。最后一组数据的两个5后面多了一个空格:

    我用 getchar 来接收字符,所以因为它这个无故多出来的空格使得后面的字符全乱了,调试输出时才有了千奇百怪的结果,不得不吐槽下杭电你也太坑了,虽说也不是第一次,之前你把行和列的输入顺序故意弄反,现在又在这里留下个这么恶心的坑,有必要卡这些非算法和编程的东西么?

     1 #include<cstdio>
     2 #include<cstring>
     3 
     4 char s[102][102];
     5 int dir[2][8]= {{-1,-1,-1,0,0,1,1,1},{-1,0,1,-1,1,-1,0,1}};
     6 
     7 void dfs(int i, int j){
     8     if(s[i][j]=='*')    return ;
     9     s[i][j]= '*';
    10     for(int k=0; k<8; ++k){
    11         int di= i+dir[0][k], dj= j+dir[1][k];
    12         if(s[di][dj]=='@')    dfs(di,dj);
    13     }
    14 }
    15 
    16 int main(){
    17     int n,m,i,j;
    18     while(~scanf("%d%d",&n,&m),n){
    19         getchar();
    20         memset(s,'*',sizeof(s));
    21         for(i=1; i<=n; ++i,getchar())
    22             for(j=1; j<=m; ++j)
    23                 s[i][j]= getchar();
    24         int ans= 0;
    25         for(i=1; i<=n; ++i)
    26             for(j=1; j<=m; ++j)
    27                 if(s[i][j]=='@'){
    28                     dfs(i,j);
    29                     ++ans;
    30                 }
    31         printf("%d
    ",ans);
    32     }
    33     return 0;
    34 }
  • 相关阅读:
    SAP基础:定位点运算
    WDA基础十七:ALV不同行显示不同下拉
    WDA基础十六:ALV的颜色
    WEB UI基础八:链接跳转到标准的工单界面
    WDA基础十五:POPUP WINDOW
    CRM创建BP(END USER)
    CRM 员工创建并分配用户
    STRANS一:简单的XML转换
    WEB UI 上传URL附件(使用方法备份)
    FPM四:用OVP做查询跳转到明细
  • 原文地址:https://www.cnblogs.com/Newdawn/p/4394399.html
Copyright © 2020-2023  润新知