当前位置: 首页 > news >正文

【C++题解】1997. 孤独的素数

欢迎关注本专栏《C++从零基础到信奥赛入门级(CSP-J)》

问题:1997. 孤独的素数

类型:二维数组


题目描述:

在一个 n 行 m 列的矩阵王国中,生活着一些整数,其中一些是素数,一些不是素数。如果一个素数的上下左右、左上、右上、左下、右下相邻的数中都没有素数,我们就认为这是一个孤独的素数。

比如:一个 3 行 5 列的矩阵如下。

3 8 10 9 5
6 10 2 4 13
8 8 9 6 3

这个矩阵中有 2 个素数,分别是第 1 行第 1 列的 3,和第 2 行第 3 列的 2 。

请编程计算出,一个 n 行 m 列的矩阵中有多少个孤独的素数?

输入:

第 1 行有 2 个整数 n 和 m ,代表矩阵的大小(3≤n,m≤50)。

接下来 n 行,每行有 m 个整数(这些整数是 1∼1000 之间的整数,含 1 和 1000 )

输出:

输出 1 个整数,代表矩阵中孤独素数的个数。

样例:

输入:

3 5
3 8 10 9 5
6 10 2 4 13
8 8 9 6 3

输出:

2

在这里插入图片描述


完整代码如下:

#include<bits/stdc++.h> 
using namespace std;bool isPrime(int p){if(p<=3) return p>1;if(p%2==0||p%3==0) return false;for(int i=5;i*i<=p;i+=6){if(p%i==0||p%(i+2)==0) return false;}return true;
}int main(){//一、分析问题//已知: 一个 n 行 m 列的矩阵;//未知:矩阵中有多少个孤独的素数?//关系://二、数据定义 int n,m,t,c=0;bool ip[51][51];//三、数据输入 cin>>n>>m;for(int i=0;i<n;++i){for(int j=0;j<m;++j){cin>>t;ip[i][j]=isPrime(t);}}//四、数据计算 for(int i=0;i<n;++i){for(int j=0;j<m;++j){if(ip[i][j]){//上 if(i-1>=0&&ip[i-1][j]) continue;//右上 if(i-1>=0&&j+1<m&&ip[i-1][j+1]) continue;//右if(j+1<m&&ip[i][j+1]) continue;//右下 if(i+1<n&&j+1<m&&ip[i+1][j+1]) continue;//下 if(i+1<n&&ip[i+1][j]) continue;//左下 if(i+1<n&&j-1>=0&&ip[i+1][j-1]) continue;//左 if(j-1>=0&&ip[i][j-1]) continue;//左上 if(i-1>=0&&j-1>=0&&ip[i-1][j-1]) continue;//八个方向都不是素数 ++c;}}}//五、输出结果 cout<<c;return 0;	
}

http://www.mrgr.cn/news/28539.html

相关文章:

  • 物料数据对接:轻易云助力聚水潭与金蝶云星空集成方案
  • 写论文好痛苦
  • 探索 HTTP 请求方法:GET、POST、PUT、DELETE 等的用法详解
  • Vue开发风格
  • Vue前端开发,组件及组件的使用
  • React Native 全栈开发实战班 :数据管理与状态之React Hooks 基础
  • ChatGPT有三个快捷指令和三个模式,你知道吗?
  • 为了有了ReentrantLock还需要ReentrantReadWriteLock?
  • golang学习笔记25——golang 实现 MD5加密、RSA加密 和 Base64编码
  • c#visionpro开发 方法统计
  • 【蓝牙协议栈】精讲蓝牙PCM和URAT
  • 九、并查集-算法总结
  • Linux进阶 修改文件权限
  • 坚持的力量--完成向CSDN迁移500篇技术文章阶段小记-以此自勉
  • Java应用的日志记录策略:有效监控与调试
  • Flask 第九课 -- 表单处理
  • DepthCrafter:为开放世界视频生成一致的长深度序列
  • AWS 将 OpenSearch 纳入 Linux 基金会旗下
  • Vue3 项目实战甄选硅谷
  • Double Write
  • 幼儿园自动分班工具:使用Python进行实现
  • 风力发电叶片缺陷检测数据集
  • 【机器学习】多模态AI——融合多种数据源的智能系统
  • 注册建造师执业工程规模标准(房屋建筑工程)
  • 程序设计题(25-32)
  • iptables部署使用