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

P10901 [蓝桥杯 2024 省 C] 封闭图形个数

思路:用一个数组存放每个数字对应的封闭图形数,输入N,用数组存放,对数组进行冒泡排序之后,然后输出数据。

问题:

1.冒泡排序不会

2.修改后只能过%50样例

解决:

1.冒泡排序,逻辑是先两两比较,保证最后一个数一定是有序的;至少要比较n-1次得到n-1个有序数字,第一个数字一定是有序的。因为有j+1,所以第一次循环只需要循环到n-1,第二次只需要循环到n-2,所以j的范围是1到n-i。

2.sort排序。

代码一

#include <bits/stdc++.h> using namespace std; #define int long long int b[10]={1,0,0,0,1,0,1,0,2,1}; int check(int a) { string s=to_string(a); int sum=0; for(int i=0;i<s.size();i++) { sum+=b[s[i]-'0']; } return sum; } bool is(int a,int c) { int m1=check(a); int m2=check(c); if(m1>m2) { return true; } else if(m1==m2) { if(a>c) { return true; } else { return false; } } return false; } signed main() { int n; cin>>n; int a[n+2]={0}; for(int i=1;i<=n;i++) { cin>>a[i]; } for(int i=1;i<=n-1;i++) { for(int j=1;j<=n-i;j++) { int temp=0; if(is(a[j],a[j+1])) { temp=a[j+1]; a[j+1]=a[j]; a[j]=temp; } } } for(int i=1;i<=n;i++) { cout<<a[i]<<' '; } return 0; }

代码二

#include <bits/stdc++.h> using namespace std; #define int long long int b[10]={1,0,0,0,1,0,1,0,2,1}; int check(int a) { string s=to_string(a); int sum=0; for(int i=0;i<s.size();i++) { sum+=b[s[i]-'0']; } return sum; } bool cmp(int a,int b) { int na=check(a); int nb=check(b); if(na!=nb) return na<nb; return a<b; } signed main() { int n; cin>>n; int a[n+2]={0}; for(int i=1;i<=n;i++) { cin>>a[i]; } sort(a+1,a+n+1,cmp); for(int i=1;i<=n;i++) { cout<<a[i]<<' '; } return 0; }
http://www.cnnetsun.cn/news/120925.html

相关文章:

  • 19、洛伦兹协变性相关算子与方程的深入解析
  • RuoYi-Cloud-Plus企业级实时消息推送:高性能SSE完整方案
  • OCRmyPDF Docker实战应用:从部署到高效处理完整指南
  • DLT Viewer完全攻略:汽车诊断日志分析利器深度解析
  • Windows字体渲染终极优化指南:MacType完整配置教程
  • Windows系统文件wsnmp32.dll丢失或损坏问题 下载修复
  • 系统驱动管家:DriverStore Explorer 高效清理与优化全攻略
  • 6、账户与文件系统安全全解析
  • 7、UNIX文件系统安全指南
  • 10、网络安全综合指南
  • 23、UNIX 系统术语与安全知识解析(上)
  • 基于STM32单片机的收费站车辆智能检测系统设计
  • 27、VR开发:打造舒适体验与多语言集成指南
  • 28、使用 Java 和 Python 与 Rift 交互
  • MelonLoader终极指南:从零开始掌握Unity游戏Mod加载的5个关键步骤
  • 36、增强虚拟现实:Leap与Rift的融合探索
  • 如何快速掌握HugeJsonViewer:突破GB级JSON解析瓶颈的完整指南
  • BFS与最短路径
  • 77、Linux技术综合指南:从IP别名到系统配置
  • Onekey:轻松获取Steam游戏清单的终极解决方案
  • LX Music Desktop:重新定义免费音乐播放的颠覆性选择
  • Mod Organizer 2新手教程:轻松管理游戏模组的必备工具
  • 如何用GKD实现手机自动化操作:新手指南与实战技巧
  • 如何用文本绘图魔法快速绘制专业流程图
  • n8n第十三节 三个节点测试技巧
  • EmotiVoice结合大模型token服务实现按需语音生成
  • LeaguePrank:英雄联盟身份伪装工具完全指南
  • 115proxy-for-kodi插件:让Kodi直接播放115网盘高清视频的完整教程
  • 电动汽车电池数据集终极指南:29个月真实数据深度解密
  • Kotaemon如何支持结构化数据与非结构化数据混合检索?