做木材加工的企业网站首页,网络公司经营范围开发属于制造吗,云平台开发网站,网站开发内容和方法本篇文章只是部分题目的理解#xff0c;代码和思路仅供参考#xff0c;切勿当成正确答案#xff0c;欢迎各位小伙伴在评论区与博主交流#xff01; 题目#xff1a;2025
题目解析 核心提取
要求的数中至少有1个0、2个2、1个5
代码展示
#includeiostream
#incl…本篇文章只是部分题目的理解代码和思路仅供参考切勿当成正确答案欢迎各位小伙伴在评论区与博主交流 题目2025
题目解析 核心提取
要求的数中至少有1个0、2个2、1个5
代码展示
#includeiostream
#includebits/stdc.h
using namespace std;
bool judge(int n)
{int x n;int nums_2 0, nums_0 0, nums_5 0; while(x){int tmp x % 10;if(tmp 2) nums_2;if(tmp 0) nums_0;if(tmp 5) nums_5;x / 10;}if(nums_2 2 nums_0 1 nums_5 1) return true;else return false;
}
int main()
{int cnt 0; for(int i 1; i 20250412; i){if(judge(i))//为真{cnt;//计数器 1 }}cout cnt;return 0;}
题目数位倍数
题目解析 核心提取
数位之和%5为0
代码展示
#includeiostream
#includebits/stdc.h
using namespace std;
bool judge(int n)
{int x n;int sum_shuwei 0;while(x){int tmp x % 10;sum_shuwei tmp;x / 10;}if(sum_shuwei % 5 0) return true;else return false;
}
int main()
{int cnt 0; for(int i 1; i 202504; i){if(judge(i))//为真{cnt;//计数器 1 }}cout cnt;return 0;}
题目倒水
题目解析 核心提取
第i个瓶子与第i k个瓶子内水的颜色相同
第i个瓶子和第ji k个瓶子内的水满足要求i j
代码原理 这里的代码原理主要是凑满足ij才能结束凑
注意减表示第i个瓶子内的水倒出 加表示第i k个瓶子的水增加
代码展示
#includeiostream
#includebits/stdc.h
using namespace std;
const int N 100000;
int a[N];
int main()
{int n 0, k 0;cin n k;for(int i 1; i n; i){cin a[i];}for(int i 1; i n / 2; i){for(int j i k; j n; j){while(a[i] a[j]){a[i]--;a[j];}}}int min_val 0x3f3f3f3f;for(int i 1; i n; i){min_val min(min_val, a[i]);}cout min_val;return 0;}
个人理解
本段代码可能存在一定的缺陷当时在比赛中也想不出啥好的思路于是就分析了一下这个例子于是就发现可以凑反正时间复杂度肯定超时有新思路的小伙伴欢迎在评论区与博主分享
题目拼好数
题目解析 核心提取
好数的定义6的个数≥6个且每一组最多只能有三个数
代码原理 红色框所框住的是重点
代码展示
#includeiostream
#includebits/stdc.h
using namespace std;
const int N 1010;
struct Node
{string val;int val_6_nums;//统计6的个数
}a[N];
int jisuan(string n)//统计6的个数
{string x n;int nums_6 0;for(int i 0; i n.size(); i){if(n[i] 6) nums_6;}return nums_6;
}
bool cmp(Node a, Node b)
{if(a.val_6_nums ! b.val_6_nums)return a.val_6_nums b.val_6_nums;else return a.val b.val;
}
int main()
{int n 0;cin n;for(int i 1; i n; i){cin a[i].val;}for(int i 1; i n; i){a[i].val_6_nums jisuan(a[i].val);//先统计每个字符串的中6的个数 }sort(a 1, a 1 n, cmp);//排序贪心的体现 int ret 0;int i 1;int tm 0;while(i n){if(a[i].val_6_nums 6) {ret;i;}else if(a[i].val_6_nums 6){a[i 1].val a[i].val;//拼接字符串 a[i 1].val_6_nums jisuan(a[i 1].val);//更新6的个数 if(tm 3)break;tm; }i;}cout ret;return 0;}
当然还是那句话本段代码可能存在一些缺陷所以代码和思路仅供参考如果有新的思路或者代码上有新的缺陷欢迎在评论区留言
题目 最短距离
题目解析 首先我们先来讲一下这个示例
示例解析 代码原理
这题的代码原理与三国游戏的原理比较类似总之也是贪心
代码展示
#includeiostream
#includebits/stdc.h
using namespace std;
const int N 50010;
int a[N], b[N];
int main()
{int n 0;cin n;for(int i 1; i n; i) cin a[i];for(int i 1; i n; i) cin b[i];sort(a 1, a 1 n);//排序贪心的体现 sort(b 1, b 1 n);int ret 0;for(int i 1; i n; i){ret abs(a[i] - b[i]);}cout ret;return 0;}
ok本篇文章的分享就到这里至此蓝桥杯系列的文章完结当然有需要的小伙伴可以留言博主看到有小伙伴要求依旧会更新。