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

淄博建设网站wordpress wp_create_user

淄博建设网站,wordpress wp_create_user,网站建设中源码,网站推广码怎么做前言 题解 这是第三届大学生算法大赛(第二届为清华社杯)的赛前练习赛一. 这是上界比赛的体验报告: 2023第二届“清华社杯”大学生算法大赛 解题报告(流水账版) | 珂学家,个人还是非常推荐这个比赛。 难度分布:4 easy/4 mid-hard/2 hard 赛前练习赛一…

前言

在这里插入图片描述


题解

这是第三届大学生算法大赛(第二届为清华社杯)的赛前练习赛一.

这是上界比赛的体验报告: 2023第二届“清华社杯”大学生算法大赛 解题报告(流水账版) | 珂学家,个人还是非常推荐这个比赛。

难度分布:4 easy/4 mid-hard/2 hard

赛前练习赛一,出自题库的每日一题,相对比较简单,又特别偏数学题。

所以这个练习赛一,感觉代表性不是那么强,但是又能代表官方的一种出题倾向吧。

在这里插入图片描述


A. 区间内的真素数

在这里插入图片描述

思路:质数筛/质数判定

因为数据范围不是很大,所以两类思路都可以

用欧拉筛的时候,需要注意范围(翻转会变大)

区间筛也可以试试

#include <bits/stdc++.h>using namespace std;const int SZ = (int)1e6;int main() {ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);int l, r;cin >> l >> r;// 欧拉筛vector<int> primes;vector<bool> vis(SZ + 1, true);vis[0] = vis[1] = false;for (int i = 2; i <= SZ; i++) {if (vis[i]) {primes.push_back(i);}for (int v: primes) {if (i > SZ / v) break;vis[i * v] = false;if (i % v == 0) break;}}function<bool(int)> checker = [&](int v) {int rv = 0;while (v > 0) {int r = v % 10;rv = rv * 10 + r;v /= 10;}return vis[rv];};vector<int> res;for (int v: primes) {if (v >= l && v <= r) {if (checker(v)) {res.push_back(v);}} else if (v > r) {break;}}if (res.empty()) {cout << "No" << '\n';} else {for (int i = 0; i < res.size(); i++) {cout << res[i] << ",\n"[i == res.size() - 1];}}return 0;
}

B. 开关灯2

在这里插入图片描述

思路:调和级数/欧拉函数

属于思维题,但是背后还是数学

有两种思路

  1. 调和级数

其复杂度为 n l o g n nlogn nlogn

  1. 欧拉函数
    就是求某个数的因子个数
    x = ∏ a i p i = > p h i ( x ) = ∏ ( p i + 1 ) x = \prod a_i^{p_i} => phi(x)=\prod (p_i+1) x=aipi=>phi(x)=(pi+1)

这边采用调和级数做法

#include <bits/stdc++.h>using namespace std;int main() {ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);int n;cin >> n;// 调和级数 nlognvector<int> arr(n + 1, 1);for (int i = 1; i <= n; i++) {for (int j = i; j <= n; j+=i) {arr[j] ^= 1;}}bool flag = false;for (int i = 1; i <= n; i++) {if (arr[i] == 0) {if (flag) cout << " ";cout << i;flag = true;}}cout << '\n';return 0;
}

C. 判断一个数能否同时被3和5整除

在这里插入图片描述

题型:签到题

#include <bits/stdc++.h>using namespace std;int main() {ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);int n;cin >> n;cout << ((n % 15 == 0) ? "Yes" : "No") << '\n';return 0;
}

D. 月份有几天

在这里插入图片描述
题型:模拟+签到

#include <bits/stdc++.h>using namespace std;int main() {ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);int y, m;cin >> y >> m;function<bool(int)> isYean = [](int y) {return (y % 4 == 0 && y % 100 != 0) || (y % 400 == 0);};int days[2][12] = {{31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},{31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},};if (isYean(y)) {cout << days[1][m - 1] << endl;} else {cout << days[0][m - 1] << endl;}return 0;
}

E. 数字反转

在这里插入图片描述
题型:签到

保证不存在 -0这样的数据存在

#include <bits/stdc++.h>using namespace std;int main() {ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);int n;cin >> n;int rn = 0;int sign = 1;if (n < 0) {sign = -1;n = -n;}while (n > 0) {rn = rn * 10 + (n % 10);n /= 10;}cout << sign * rn << endl;return 0;
}

写在最后

在这里插入图片描述

http://www.yayakq.cn/news/961214/

相关文章:

  • 营销网站更受用户欢迎的原因是外综服务平台哪里做网站
  • 网站开发毕业设计文献综述建设建设网站的
  • 养老网站建设方案上海500强企业排名
  • 做彩票网站代理犯法吗6做网站骗子
  • 电子商务网站建设与维护致谢词当今做网站的语言有哪些
  • 东莞做网站有哪些重庆工程信息网查询
  • 大学高校网站建设栏目怎么做购物网站
  • WordPress瀑布流图片站外包公司名单
  • 网站建设现状调查研究网站页面设计成品下载
  • 网站建设在什么税控盘360建筑网怎么删除电话
  • 聊城网站推广网站转化分析
  • 松滋网站设计常熟智能网站开发
  • 网站开发结构四川省城乡住房和建设厅网站
  • 现在网站建设用什么语言温州网上推广什么网站好
  • 网站开发与部署哪个公司建网站最好
  • 上海专业做网站电话网页免费版
  • 小说阅读网站建设市场需求分析wordpress 资源主题
  • 网站建设的行业代码是多少钱网站伪静态如何配置文件
  • 用友公司能不能做网站建设国家免费培训机构
  • 网站备案时间怎么查询网站开发流程三大部分
  • 网站开发需要的准备偃师网站
  • 金华网站设计公司建设网站总结
  • 效果图网站名字网站商品展示页怎么做
  • 网站建设有哪些问题wordpress免费网站模板下载地址
  • 帮人做彩票网站支付接口wordpress不能访问首页
  • 建立网站来网上销售的英文石家庄网站定制
  • 有哪些网站建设工作室wordpress页脚设置
  • 手机网站建设方案镇江seo网站优化
  • 流程图制作网站医药网站源代码
  • 网站设计与制作合同微博营销的特点