题面传送门

就是一个dfs查找星座,然后再数出星系数。

函数:

#include <bits/stdc++.h>
using namespace std;
int n,m,maxn,maxnr,fx[8]={ 0,0,-1,1,-1, 1,-1,1},fy[8]={-1,1,-1,1, 1,-1, 0,0};
int a[1539][1539],b[900001]={0};
inline void read(register int &x){x=0;register int f=1;register char c=getchar();while(c<'0'||c>'9'){if(c=='-')f=-1;c=getchar();}while(c>='0'&&c<='9')x=(x<<3)+(x<<1)+(c^48),c=getchar();x*=f;
}
int dfs(int x,int y){int ans=0,bx=x,by=y;for(register int i=0;i<=7;i++){x=bx,y=by;x+=fx[i];y+=fy[i];if(x>=1&&x<=n&&y>=1&&y<=m&&a[x][y]==1){a[x][y]=0;ans+=dfs(x,y);}}ans++;return ans;
}
int main(){//  freopen("star.in","r",stdin);
//  freopen("star.out","w",stdout);int ansr=0;read(n);read(m);char s;for(register int i=1;i<=n;i++)for(register int j=1;j<=m;j++){cin>>s;if(s=='*')a[i][j]=1;elsea[i][j]=0;}for(register int i=1;i<=n;i++)for(register int j=1;j<=m;j++)if(a[i][j]==1){a[i][j]=0;int k=dfs(i,j);b[k]++;maxnr=max(k,maxnr);}for(register int i=1;i<=maxnr;i++){if(b[i]>=1) ansr++;maxn=max(maxn,b[i]*i);}printf("%d %d",ansr,maxn);return 0;
}

队列:

#include <bits/stdc++.h>
using namespace std;
int a[1539][1539],x,y,n,m,k,ans,tot,pus,f[1539][1539],nowx,nowy,d[1539*1539];
int xp[9]={0,1,0,-1,0,1,1,-1,-1};
int yp[9]={0,0,1,0,-1,1,-1,1,-1};
struct yyy{int x,y;}tmp;
queue<yyy> q;
char s;
int main(){//  freopen("star.in","r",stdin);
//  freopen("star.out","w",stdout);register int i,j,h;scanf("%d%d",&n,&m);for(i=1;i<=n;i++){for(j=1;j<=m;j++){s=getchar();while(s!='*'&&s!='.') s=getchar();if(s=='*') a[i][j]=1;} }for(i=1;i<=n;i++){for(j=1;j<=m;j++){if(!f[i][j]&&a[i][j]){ans=1;q.push((yyy){i,j});f[i][j]=1;while(!q.empty()){tmp=q.front();q.pop();for(h=1;h<=8;h++){nowx=tmp.x+xp[h];nowy=tmp.y+yp[h];if(a[nowx][nowy]&&!f[nowx][nowy]) q.push((yyy){nowx,nowy}),ans++,f[nowx][nowy]=1;}}d[ans]+=ans;if(d[ans]==ans)tot++;pus=max(pus,d[ans]);}}}printf("%d %d\n",tot,pus);return 0;
}

[NOI Online #3 入门组]观星相关推荐

  1. 题解【洛谷】P6566 NOI Online #3 入门组 观星

    题目描述: 点击进入题目 Jimmy 和 Symbol 约好一起看星星,浩瀚的星空可视为一个长为 N.宽为 M的矩阵,矩阵中共有N×MN \times MN×M个位置,一个位置可以用坐标 (i,j)( ...

  2. luogu P6566 [NOI Online #3 入门组]观星

    题面传送门 直接bfsbfsbfs即可. 代码实现: #include<cstdio> #include<queue> #define max(a,b) ((a)>(b) ...

  3. 【DFS】洛谷P6566 [NOI Online #3 入门组]观星(民间数据)

    Link Problem Sample-1 in 5 7 *...... ..**..* .*...*. ...*... ....*.. Sample-1 out 3 4 Sample-2 in 10 ...

  4. 【寒假每日一题】洛谷 P7471 [NOI Online 2021 入门组] 切蛋糕

    题目链接:P7471 [NOI Online 2021 入门组] 切蛋糕 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题目描述 Alice.Bob 和 Cindy 三个好朋友得到 ...

  5. NOI Online 2022 入门组

    NOI Online 2022 入门组 题目 T1 王国比赛 智慧之王 Kri统治着一座王国.这天 Kri决定举行一场比赛,来检验自己大臣的智慧. 比赛由 n道判断题组成,有 m位大臣参加. 现在你已 ...

  6. 洛谷6474[NOI Online #2 入门组]荆轲刺秦王

    题目背景 本测试数据为脚造,欢迎提供hack. 第18组数据卡了很多人,放于附件中供检查. 题目描述 时隔数年,刺客荆轲再次来到咸阳宫,试图刺杀嬴政. 咸阳宫的地图可以描述为一个 n 行 m 列的矩形 ...

  7. NOI Online 2022 入门组T2

    题面: Kri 喜欢玩数字游戏. ⼀天,他在草稿纸上写下了 t 对正整数 (x,y) ,并对于每⼀对正整数计算出了 z=x*y*gcd(x,y) . 可是调⽪的 Zay 找到了 Kri 的草稿纸,并把 ...

  8. P6474 [NOI Online #2 入门组] 荆轲刺秦王 题解--zhengjun

    我一开始就打出来了,可是忘记一个很重要的剪枝,就是如果当前的步数已经超过答案的步数就不用搜了,还有就是每一个点的每一种状态都只能走到一次(其实就是走到一个点,之前使用了相同的魔法已经到过这个点)那么也 ...

  9. 数学游戏 [NOI Online 2022 入门组]

    题目要求 题目解析 假设x和y的最大公约数为t,则x/t和y/t是互质的,因此, x 2 x^2 x2和 z / x z/x z/x的最大公约数为 t 2 t^2 t2. 下面程序已通过官方测试数据. ...

最新文章

  1. python描述器做权限控制_Python装饰器14-描述器
  2. Possion 分布
  3. 重磅:USNews2021世界大学排行榜出炉!清华首登亚洲第一
  4. 【Android 内存优化】Java 引用类型 ( 强引用 | 软引用 | 弱引用 | 虚引用 )
  5. View和View的参数传递
  6. 多功能网址导航源码 包含交易系统等多功能
  7. Flutter尝鲜3——动画处理并行和串行
  8. redis数据丢失_Redis持久化Redis宕机或者出现意外删库导致数据丢失解决方案
  9. 常用游戏分析工具 之 PChunter 及 procexp 使用心得
  10. 自动驾驶决策规划研究综述
  11. 浏览器如何截图整个滚动屏 ?
  12. 教你“强人锁男”——java并发编程的常用锁类型
  13. 实战PyQt5: 086-图元类QGraphicsItem
  14. jquery省市县三级联动
  15. iOS Background Fetch 后台应用程序刷新的使用
  16. IT公司、软件公司资质(转)
  17. TP-Link wr886n 路由器插上光纤后网速变慢问题
  18. 机器学习-3:MachineLN之dl
  19. 无代码开发是什么?白码详解
  20. 正弦波振荡电路的相关概念

热门文章

  1. 为韩春雨老师和他的 NgAgo-gDNA 点赞
  2. php游戏礼包源码,php 游戏新手卡领号程序管理系统 v2.5
  3. Python几种常见算法汇总
  4. excel 多条件查找三种方法:lookup、vlookup、indexmatch 多条件查找案例
  5. 【jetson nano 4GB】dd备份镜像(手把手超详细)
  6. python接口测试框架选择之pytest+yaml+Allure
  7. 阿里云大数据工程师ACA认证考试大纲
  8. 第一届华数杯B题思路浅析
  9. selenium python自动化测试教程_Python selenium自动化测试模型图解
  10. 6.CreateEvent函数与SetEvent函数