栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

poj 1327 Moving Object Recogn...

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

poj 1327 Moving Object Recogn...

# include <iostream># include <cstdio># include <vector>using namespace std;char map[300][300];int c,r;void dfs(int i,int j,double &x,double &y,int &total){   if(i<0||i>=r||j<0||j>c||map[i][j]=='.') return;   map[i][j]='.';   total++;   x+=(2*i+1)/2.0;   y+=(2*j+1)/2.0;   dfs(i-1,j,x,y,total);   dfs(i+1,j,x,y,total);   dfs(i,j-1,x,y,total);   dfs(i,j+1,x,y,total);}int main(){    while(true)    {       vector<double> x,y;       scanf("%d%d",&c,&r);       if(!c&&!r) break;       while(true)       {          int maxnum=-1;          double totalx=0,totaly=0;          for(int i=0;i<r;i++) scanf("%s",map[i]);          for(int i=0;i<r;i++) for(int j=0;j<c;j++) if(map[i][j]=='x') {    double nowx=0,nowy=0;    int total=0;    dfs(i,j,nowx,nowy,total);    if(total>maxnum)    {       maxnum=total;       totalx=nowx;       totaly=nowy;    } }x.push_back((totalx)/maxnum);y.push_back((totaly)/maxnum);scanf("%s",map[0]);if(map[0][0]=='=') break;       }       double resx=0,resy=0;       int T=x.size()/2;       for(int i=0;i<x.size()-T;i++)       {         resx+=(x[i+T]-x[i])/T;         resy+=(y[i+T]-y[i])/T;       }       resx/=T;       resy/=T;       printf("%.2f %.2fn",resy+1e-6,resx+1e-6);    }    return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/374088.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号