news 2026/4/16 11:05:45

hh蓝桥杯每日一题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
hh蓝桥杯每日一题

12.日期问题 - 蓝桥云课

这个题目主要考察的是日期问题

闰年的判断还

日期的去重和排大小(可以用map实现,但我用的vector+pair)

#include<iostream> #include<cstring> #include<vector> #include<algorithm> using namespace std; bool isleapyear(int y) { if(y%400==0)return true; if(y%100==0)return false; return y%4==0; } bool check(int yy,int month,int day,int &fullyear) { if(month<1||month>12)return false; if(yy>=40)fullyear=1900+yy; else fullyear=2000+yy; if(fullyear<1960||fullyear>2059) { return false; } if(day<1)return false; if(month==2) { if(isleapyear(fullyear)) { return day<=29; } else return day<=28; } if(month==4||month==6||month==9||month==11)return month<=30; return day<=31; } int datetoint(int y,int m,int d) { return y*10000+m*100+d; } int main() { string s; cin>>s; int a = (s[0] - '0') * 10 + (s[1] - '0'); int b = (s[3] - '0') * 10 + (s[4] - '0'); int c = (s[6] - '0') * 10 + (s[7] - '0'); vector<pair<int,string>> dates; int year1; if(check(a,b,c,year1)) { int dateint=datetoint(year1,b,c); char buf[20]; sprintf(buf, "%04d-%02d-%02d", year1, b, c); dates.push_back({dateint, buf}); } int year2; if(check(c,b,a,year2)) { int dateint=datetoint(year2,b,a); char buf[20]; sprintf(buf, "%04d-%02d-%02d", year2, b, a); dates.push_back({dateint, buf}); } int year3; if(check(c,a,b,year3)) { int dateint=datetoint(year3,a,b); char buf[20]; sprintf(buf, "%04d-%02d-%02d", year3, a, b); dates.push_back({dateint, buf}); } sort(dates.begin(), dates.end()); // 去重并输出 string lastDate = ""; for (const auto& p : dates) { if (p.second != lastDate) { cout << p.second << endl; lastDate = p.second; } } return 0; }

14.油漆面积 - 蓝桥云课

求这个的面积可以转化成标记这个图上的位置是否被访问过来求

这样就很简单了,准备一个n*n的数组和一个标记是否访问过的标签

#include<iostream> #include<cstring> #include<algorithm> using namespace std; const int N = 10010; bool marked[N][N]; // 标记数组,记录每个点是否被覆盖 int main() { int n; cin >> n; // 初始化标记数组 memset(marked, 0, sizeof(marked)); int total = 0; for(int i = 0; i < n; i++) { int x1, y1, x2, y2; cin >> x1 >> y1 >> x2 >> y2; // 确保x1<=x2, y1<=y2 if(x1 > x2) swap(x1, x2); if(y1 > y2) swap(y1, y2); // 标记这个矩形覆盖的区域 for(int x = x1; x < x2; x++) { for(int y = y1; y < y2; y++) { if(!marked[x][y]) { marked[x][y] = true; total++; } } } } cout << total << endl; return 0; }

17.发现环 - 蓝桥云课

这个有两种做法

利用拓扑排序

或者是并查集和dfs

#include<iostream> #include<cstring> #include<algorithm> #include<vector> #include<queue> using namespace std; const int N = 100010; vector<int> g[N]; // 邻接表 int degree[N]; // 每个节点的度 bool inCycle[N]; // 是否在环上 int main() { int n; cin >> n; // 初始化 for(int i = 0; i <= n; i++) { g[i].clear(); degree[i] = 0; inCycle[i] = true; // 初始假设所有节点都在环上 } // 读入边 for(int i = 0; i < n; i++) { int a, b; cin >> a >> b; g[a].push_back(b); g[b].push_back(a); degree[a]++; degree[b]++; } // 拓扑排序:删除所有不在环上的节点(度为1的节点) queue<int> q; for(int i = 1; i <= n; i++) { if(degree[i] == 1) { q.push(i); inCycle[i] = false; } } while(!q.empty()) { int u = q.front(); q.pop(); for(int v : g[u]) { degree[v]--; if(degree[v] == 1 && inCycle[v]) { q.push(v); inCycle[v] = false; } } } // 输出环上的节点 bool first = true; for(int i = 1; i <= n; i++) { if(inCycle[i]) { if(!first) cout << " "; cout << i; first = false; } } cout << endl; return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 14:50:17

前后端分离学科竞赛管理系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程

摘要 随着信息技术的快速发展&#xff0c;学科竞赛管理系统的信息化和智能化需求日益增长。传统的学科竞赛管理模式依赖人工操作&#xff0c;效率低下且容易出错&#xff0c;难以满足大规模竞赛活动的需求。为了解决这一问题&#xff0c;设计并实现一个基于前后端分离架构的学科…

作者头像 李华
网站建设 2026/4/16 14:49:55

DSP算法学习

都是以QPSK为例针对不同的qam信号&#xff0c;一些算法可能不同&#xff0c;还需读者再去学习从IQ时延对准-IQ不平衡-粗色散补偿-自适应均衡解复用-频偏估计与补偿-载波相位恢复

作者头像 李华
网站建设 2026/4/16 14:50:21

ai-agent 一个强大的辅助工具

随着ai的大热&#xff0c;如何更好的利用ai&#xff0c;而不单单作为知识的查询。如果它能帮我们设计测试用例&#xff0c;执行用例&#xff0c;并给出结果&#xff0c;甚至可以帮我们开发&#xff0c;是不是一个梦中情tool。 这不单单是幻想&#xff0c;目前不少大厂已经实现&…

作者头像 李华
网站建设 2026/4/16 13:00:41

[特殊字符]_微服务架构下的性能调优实战[20260108162541]

作为一名经历过多个微服务架构项目的工程师&#xff0c;我深知在分布式环境下进行性能调优的复杂性。微服务架构虽然提供了良好的可扩展性和灵活性&#xff0c;但也带来了新的性能挑战。今天我要分享的是在微服务架构下进行性能调优的实战经验。 &#x1f4a1; 微服务架构的性…

作者头像 李华
网站建设 2026/4/16 14:50:36

Gerber文件解析利器gerbv:PCB制造验证的专业解决方案

Gerber文件解析利器gerbv&#xff1a;PCB制造验证的专业解决方案 【免费下载链接】gerbv Maintained fork of gerbv, carrying mostly bugfixes 项目地址: https://gitcode.com/gh_mirrors/ge/gerbv 在电子设计自动化流程中&#xff0c;Gerber文件作为PCB制造的核心数据…

作者头像 李华
网站建设 2026/4/16 14:51:00

解读具身智能系统任务生命周期与认知闭环的关系

一、先给出一个总判断在具身智能系统中&#xff1a;任务生命周期 认知闭环的外在组织形式 认知闭环 任务生命周期的内在运作机制二者不是并列关系&#xff0c;而是同一过程的两个观察视角&#xff1a;视角关注点任务生命周期“系统在做什么、做到哪一步了”认知闭环“系统如何…

作者头像 李华