zoukankan      html  css  js  c++  java
  • 湖南大学2015年“新生杯”程序设计竞赛

    链接:http://acm.hnu.cn/online/?action=problem&type=list&courseid=338

    C题:征程的开始

        使用while (scanf("%d %d",&a,&b)!=EOF)语句。

     1 /*C*/
     2 #include<stdio.h>
     3 int main()
     4 {
     5     int a,b,c;
     6     while(scanf("%d%d%d",&a,&b,&c)!=EOF)
     7     {
     8         printf("%d
    ",a+b+c);
     9     }
    10     return 0;
    11 }
    View Code

    D题:海内存知己

        简单BFS求联通块数

     1 /*D*/
     2 #include<stdio.h>
     3 #include<string.h>
     4 char matrix[55][55];//定义二维数组 
     5 int vis[55][55];//标记是否访问过 
     6 int queue[3000];//用队列存储 
     7 int m;//每行的人数 
     8 int ans;//所求的联通块数 
     9 int dx[4]={-1,1,0,0},dy[4]={0,0,-1,1};
    10 
    11 void BFS(int x,int y)
    12 {
    13     if(vis[x][y]==1)
    14         return;//访问过则退出 
    15     int front=0,rear=0;
    16     int nx,ny;
    17     int d;
    18     int u;
    19     vis[x][y]=1;
    20     ans=ans+1;
    21     u=x*m+y;
    22     queue[rear++]=u;
    23     while(front<rear)
    24     {
    25         u=queue[front++];
    26         x=u/m;y=u%m;
    27         for(d=0;d<4;d++)
    28         {
    29             nx=x+dx[d];ny=y+dy[d];
    30             if(nx<0||nx==m||ny<0||ny==m)
    31                 continue;
    32             if(vis[nx][ny]==1)
    33                 continue;
    34             if(matrix[nx][ny]=='X')
    35                 continue;
    36             u=nx*m+ny;
    37             queue[rear++]=u;
    38             vis[nx][ny]=1;
    39         }
    40     }
    41 }
    42 
    43 int main()
    44 {
    45     int i,j;
    46     while(scanf("%d",&m)!=EOF)
    47     {
    48         for(i=0;i<m;i++)
    49             scanf("%s",matrix[i]);
    50         memset(vis,0,sizeof(vis));
    51         ans=0;
    52         for(i=0;i<m;i++)
    53             for(j=0;j<m;j++)
    54                 if(matrix[i][j]=='.')
    55                     BFS(i,j);//对每个人进行BFS 
    56         printf("%d
    ",ans);
    57     }
    58     return 0;
    59 }
    View Code
  • 相关阅读:
    jQuery自学笔记(四):jQuery DOM节点操作
    jQuery自学笔记(三):jQuery动画效果
    jQuery自学笔记(二):jQuery选择器
    面试记录与复盘总结
    wh-研发功能复盘
    st项目-要素标记功能的实现以及经验总结
    ST项目经验总结2
    S台项目记录-1
    统计模型项目开发经验汇总
    开发规范
  • 原文地址:https://www.cnblogs.com/yepiaoling/p/5068004.html
Copyright © 2011-2022 走看看