news 2026/6/25 11:24:45

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/23 19:17:49

智慧树网课加速插件终极指南:3步实现学习效率翻倍

智慧树网课加速插件终极指南&#xff1a;3步实现学习效率翻倍 【免费下载链接】zhihuishu 智慧树刷课插件&#xff0c;自动播放下一集、1.5倍速度、无声 项目地址: https://gitcode.com/gh_mirrors/zh/zhihuishu 还在为智慧树网课冗长的播放时间烦恼吗&#xff1f;想要在…

作者头像 李华
网站建设 2026/6/23 17:24:54

RePKG深度解析:Wallpaper Engine资源处理的专业解决方案

RePKG深度解析&#xff1a;Wallpaper Engine资源处理的专业解决方案 【免费下载链接】repkg Wallpaper engine PKG extractor/TEX to image converter 项目地址: https://gitcode.com/gh_mirrors/re/repkg 在壁纸开发与资源分析领域&#xff0c;处理Wallpaper Engine的P…

作者头像 李华
网站建设 2026/6/23 14:25:31

Windows字体渲染革命:如何用MacType获得Mac级字体显示效果

Windows字体渲染革命&#xff1a;如何用MacType获得Mac级字体显示效果 【免费下载链接】mactype Better font rendering for Windows. 项目地址: https://gitcode.com/gh_mirrors/ma/mactype 厌倦了Windows系统上模糊不清的字体显示&#xff1f;想要获得像macOS那样清晰…

作者头像 李华
网站建设 2026/6/24 13:50:16

终极指南:5步掌握Python CAN工具(cantools)实战

终极指南&#xff1a;5步掌握Python CAN工具(cantools)实战 【免费下载链接】cantools CAN bus tools. 项目地址: https://gitcode.com/gh_mirrors/ca/cantools CAN总线作为现代汽车和工业控制系统的核心通信协议&#xff0c;其数据处理一直是嵌入式开发的关键环节。Pyt…

作者头像 李华
网站建设 2026/6/24 3:40:05

EmotiVoice禁止生成违法不良信息声明

EmotiVoice&#xff1a;高表现力语音合成的技术边界与责任 在虚拟偶像的直播中&#xff0c;一句带着笑意的“谢谢大家的支持”让人倍感亲切&#xff1b;在有声书中&#xff0c;旁白语气随情节起伏而低沉或激昂&#xff0c;仿佛真实演绎&#xff1b;而在某些社交平台上&#xf…

作者头像 李华
网站建设 2026/6/23 20:26:37

MelonLoader终极指南:5分钟掌握Unity游戏Mod加载技巧

MelonLoader终极指南&#xff1a;5分钟掌握Unity游戏Mod加载技巧 【免费下载链接】MelonLoader The Worlds First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono 项目地址: https://gitcode.com/gh_mirrors/me/MelonLoader 作为全球首个支…

作者头像 李华