基础算法(三)#蓝桥杯

文章目录

    • 11、构造
      • 11.1、小浩的ABC
      • 11.2、小新的质数序列挑战
      • 11.3、小蓝找答案
      • 11.4、小蓝的无限集
    • 12、高精度
      • 12.1、阶乘数码(高精度*单精度)

11、构造

11.1、小浩的ABC

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
using ll = long long;int main(){IOS;int t;cin>>t;while(t--){ll x;cin>>x;// A B C  <=10^6if(x<2){cout<<"-1"<<'\n';continue;}if(x<=1000000){cout<<x-1<<" 1 1"<<'\n';continue;}ll a=1000000,c=x%a,b;if(c==0)c=a;b=(x-c)/a;cout<<a<<' '<<b<<' '<<c<<'\n';}return 0;
}

11.2、小新的质数序列挑战

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
using ll = long long;int main(){IOS;int T;cin>>T;while(T--){//质数序列,只能被1或本身整除的序列ll a,b;cin>>a>>b;if(a==1||b==1){cout<<"-1\n";continue;}auto gcd = [&](ll a,ll b){while(b!=0){ll t=a%b;a=b;b=t;}return a;};ll g=gcd(a,b);if(g==1){cout<<"1\n";}else{cout<<"0\n";}}return 0;
}

11.3、小蓝找答案

#include <bits/stdc++.h>using LL = long long;
using Pair = std::pair<int, int>;
#define inf 1'000'000'000void solve(const int &Case) {int n;std::cin >> n;std::vector<int> a(n);for (auto &x: a)std::cin >> x;auto ck = [&]() {for (int i = 1; i < n; i++) {if (a[i] <= a[i - 1])return false;}return true;};if (ck()) {std::cout << "1\n";return;}int l = 2, r = n, ret = n;while (l <= r) {int mid = (l + r) >> 1;std::vector<Pair> A;int flag = 0;std::function<void(int)> push = [&](int x) {if (x <= 0) {flag = 1;return;}while (!A.empty() && A.back().first > x)A.pop_back();if (A.empty()) {A.emplace_back(x, 1);return;}if (A.back().first == x) {A.back().second++;if (A.back().second == mid) {push(x - 1);A.emplace_back(x, 0);}}else {A.emplace_back(x, 1);}};A.emplace_back(a[0], 0);for (int i = 1; i < n; i++) {if (a[i] > a[i - 1])A.emplace_back(a[i], 0);else push(a[i]);if (flag)break;}if (flag)l = mid + 1;else {ret = mid;r = mid - 1;}}std::cout << ret << '\n';
}int main() {std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);int T = 1;
//    std::cin >> T;for (int Case = 1; Case <= T; Case++)solve(Case);return 0;
}

11.4、小蓝的无限集

#include <bits/stdc++.h>using LL = long long;
using Pair = std::pair<int, int>;
#define inf 1'000'000'000void solve(const int &Case) {int a, b, n;std::cin >> a >> b >> n;if (a == 1) {if (n % b == 1)std::cout << "Yes\n";else std::cout << "No\n";return;}// 枚举 a ^ iLL pw = 1;while (pw <= n) {if ((n - pw) % b == 0) {std::cout << "Yes\n";return;}pw *= a;}std::cout << "No\n";
}int main() {std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);int T = 1;std::cin >> T;for (int Case = 1; Case <= T; Case++)solve(Case);return 0;
}

12、高精度

12.1、阶乘数码(高精度*单精度)

#include<bits/stdc++.h>
#define IOS ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
using namespace std;
void mult(vector<int>& a,int b){int d=0;for(int i=0;i<a.size();i++){int p=a[i]*b+d;a[i]=p%10;d=p/10;}while(d){a.push_back(d%10);d/=10;}
}
int main() {IOS;int t;cin>>t;while(t--){int n,a1;cin>>n>>a1;vector<int> ans(1,1);for(int i=2;i<=n;i++){mult(ans,i);//n的阶乘}int res=0;for(const auto &x:ans){if(x==a1)res++;}cout<<res<<"\n";}return 0;
}

越来越难了。。。。。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/725015.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MQTT连接阿里云物联网上报物模型数据

目录 1. 创建产品&#xff08;物联网平台 -> 产品 -> 创建产品&#xff09; 2. 为产品添加设备 3. 添加物模型 4. mqtt.fx连接测试 5. 调试物模型 6. 使用mqtt.fx上报温度数据 1. 创建产品&#xff08;物联网平台 -> 产品 -> 创建产品&#xff09; 我这里再新…

嵌入式Linux学习DAY27

消息队列通信&#xff1a; IPC对象&#xff1a;内存文件 消息队列查看&#xff1a;ipcs 消息队列删除&#xff1a; ipcrm -M/-Q/-S key---删除消息队列、内存共享、信号灯 ipcrm -q/-m/-s 消息队列ID/共享内存ID/信号灯ID 流程&#xff1a;创建消息队列->发送消息->…

利用Nginx简单实现端口转发

工作中&#xff0c;经常遇到端口转发的情况。实现的方式很多种&#xff0c;个人感觉还是用nginx实现方便一些。我的环境是ubuntu 22.04, 路由器开通端口段全部映射到这台机器&#xff0c;然后再由它转发给各兄弟机。 /etc/nginx/nginx.conf, 文末位置加入&#xff1a; stream…

迷宫641——2017蓝桥杯

1.这种“一路走到底”就是dfs 2.ps:我觉得要自己思考怎么样是走出去&#xff0c;怎么样是走不出去&#xff0c;对于提高分析问题从而建模编程的能力提高很有效。 走出去&#xff1a;就是坐标超出格子了 走不出去&#xff1a;就是一直绕圈子&#xff0c;什么是绕圈子&#xf…

Java开发快速学习,Java面试题汇总

前言 面试时间将近两个小时&#xff08;期间等待二面面试官来面我的时候等了半个多小时&#xff09;面试官问的东西很多&#xff0c;还挖了好几个坑&#xff0c;一个技术点套着一个技术点的问&#xff0c;一定要做好万全的准备。问了一些基本层面上的技术点都答出来了&#xf…

Vue基础练习 组件之间数据传递

父→子&#xff1a;在子组件注册时写入props&#xff0c;并指定验证要求&#xff0c;父组件时使用v-bind绑定传入数据 //父组件&#xff1a;<Menu class"Menu" :MenuList"MenuList" :showUnderLine"showUnderLine"></Menu>data(){r…

Java项目:39 springboot007大学生租房平台的设计与实现

作者主页&#xff1a;源码空间codegym 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 系统有管理员、房东和用户 【主要功能】 1、后台&#xff1a;房源管理、信息审批管理、订单信息管理、房东管理、用户管理 2、前台&#xff1…

学习总结——JMeter做http接口功能测试

JMeter对各种类型接口的测试 默认做接口测试前&#xff0c;已经给出明确的接口文档&#xff08;如&#xff0c;http://test.nnzhp.cn/wiki/index.php?doc-view-59&#xff09;&#xff1b;本地配好了JMeter 3.x的运行环境&#xff1b; 打开JMeter&#xff0c;添加一个线程组…

TCP和UDP可以使用同一个端口号吗?

TCP和UDP可以使用同一个端口号吗&#xff1f; 首先说答案&#xff1a;可以。怎么理解呢&#xff1f; 我想这个问题要从计算机网络通信谈起&#xff0c;学过计算机网络的同学&#xff0c;可能都还记得7层或者4层网络模型&#xff0c;TCP/UDP属于其中的传输层协议&#xff0c;在…

浅析扩散模型与图像生成【应用篇】(七)——Prompt-to-Prpmpt

7. Prompt-to-Prompt Image Editing with Cross Attention Control 本文提出一种利用交叉注意力机制实现文本驱动的图像编辑方法&#xff0c;可以对生成图像中的对象进行替换&#xff0c;整体改变图像的风格&#xff0c;或改变某个词对生成图像的影响程度&#xff0c;如下图所示…

《程序员的职业迷宫:选择你的职业赛道》

程序员如何选择职业赛道&#xff1f; 大家好&#xff0c;我是小明&#xff0c;一名在编程迷宫中探索的程序员。作为这个庞大迷宫的探险者&#xff0c;我深知选择适合自己的职业赛道有多么重要。今天&#xff0c;我将分享一些关于如何选择职业赛道的心得&#xff0c;希望能够帮…

代码随想录算法训练营第一天|704.二分查找、27.移除元素

题目 704. 二分查找 相关企业 给定一个 n 个元素有序的&#xff08;升序&#xff09;整型数组 nums 和一个目标值 target &#xff0c;写一个函数搜索 nums 中的 target&#xff0c;如果目标值存在返回下标&#xff0c;否则返回 -1。 示例 1: 输入: nums [-1,0,3,5,9,12], tar…

标准C库函数之perror()、strerror(),以及他们之间各种的优缺点(打印错误信息)

标准C库函数之perror()、strerror()&#xff0c;以及他们之间各种的优缺点&#xff08;打印错误信息&#xff09; 前言 如果&#xff0c;想要深入的学习标准C库中perror、strerror函数&#xff0c;还是需要去自己阅读Linux系统中的帮助文档。 具体输入命令&#xff1a; man 3…

网络编程作业day6

数据库操作的增、删、改完成 #include <myhead.h>//查询的回调函数 int callback(void* data,int count,char** argv, char** columnName) {//count是字段数//argv是字段内容//columnName是字段名称for(int i0;i<count;i) {printf("%s%s\n", columnName[…

2024全国水科技大会暨新能源及电子行业废水论坛(十一)

一、会议背景 为深入学习贯彻《中共中央、国务院关于全面推进美丽中国建设的意见》&#xff0c;全面贯彻实施《固体废物污染环境防治法》、《“十四五”全国城市基础设施建设规划》&#xff0c;推进我国污泥处理工程建设&#xff0c;提高处理产物资源化利用水平&#xff0c;促进…

堆排序实现

在了解堆的一些性质后&#xff0c;我们可以根据这些性质来实现一个较优的算法&#xff0c;也就是堆排序。 堆排序&#xff0c;顾名思义就是排序&#xff0c;其运用到堆的各种性质。首先我们要创建一个堆&#xff0c;在原有数组上进行向上或者向下调整使其变成一个堆。那么这时…

typedef的详细理解

目录 1.typedef对整型指针进行重命名 2.typedef对数组指针进行重命名 3.typedef对函数指针进行重命名 总结&#xff1a;所有重新命名的函数名必须写在*号旁边。 1.typedef对整型指针进行重命名 代码如下&#xff1a; typedef int* pint; int main() {int* p NULL;pint p…

Python内置模块

目录 什么是模块 模块分类 通过模块创建者分类 系统内置模块 第三方模块 在线安装 离线安装 模块导入 math和random模块介绍 math模块 random模块 什么是模块 在我们编写程序时&#xff0c;需要导入包。例如随机数的产生&#xff0c;需要import random。import XXX&…

计算机基础专升本笔记-汇总笔记(三)常用文件格式

计算机基础专升本笔记-汇总笔记&#xff08;三&#xff09;常用文件格式 一、文本文件格式 扩展名&#xff08;后缀名&#xff09;文件类型docxWord2010文档dotxWord2010模版xlsxExcel2010文档xltxExcel2010模版pptxPower Point 演示文稿potxPower Point 2010模版ppsxPower P…

XGboost的整理

XGboost&#xff08;extreme gradient boosting&#xff09;:高效实现了GBDT算法并进行了算法和工程上的许多改进。 XGboost的思路&#xff1a; 目标&#xff1a;建立k个回归树&#xff0c;使得树群的预测尽量接近真实值&#xff08;准确率&#xff09;而且有尽量大的泛化能力…