2025 -- 星航计划 --三月份 -- 基础算法 总结

news/2025/3/10 22:58:11/文章来源:https://www.cnblogs.com/amcplayer/p/18763938

第一题

考虑只有B和C怎么做,如果一段里有偶数个B肯定全修改为A,否则肯定是若干个A最后剩下一个B。

对于所有情况,先将所有的A修改成BB(因为可以修改回来,所以肯定不劣),便转化成了只有B和C。

第二题

不说了,上码

#include <iostream>
#include <vector>
#include <algorithm>using namespace std;int main() {int n;cin >> n; // 输入数组大小vector<int> A(n), B(n), C(n);for (int i = 0; i < n; ++i) cin >> A[i];for (int i = 0; i < n; ++i) cin >> B[i];for (int i = 0; i < n; ++i) cin >> C[i];// 对三个数组进行升序排序sort(A.begin(), A.end());sort(B.begin(), B.end());sort(C.begin(), C.end());int i = 0, j = 0, k = 0; // 指针分别指向 A, B, C 的开头int count = 0;// 使用双指针解决问题while (i < n && j < n && k < n) {if (A[i] < B[j] && B[j] < C[k]) {// 如果满足 A[i] < B[j] < C[k],计数加1,三个指针全部前移++count;++i;++j;++k;} else if (A[i] >= B[j]) {// 如果 A[i] >= B[j],说明 B[j] 太小,j 前移++j;} else {// 如果 B[j] >= C[k],说明 C[k] 太小,k 前移++k;}}// 输出结果cout << count << endl;return 0;
}

第三题

#include<bits/stdc++.h>
using namespace std;
using ll = long long;
using ull = unsigned long long;#define rep(i, n) for (int i = 0; i < (n); i++)ll GCD(ll a, ll b) {return b ? GCD(b, a % b) : a;
}ll LCM(ll a, ll b) {return a / GCD(a, b) * b;
}int N;
ll s[2];
vector<ll> A, B;
vector<ll> D[2];ll solve(ll x, ll y) {rep(i, N-1) {if (A[i] % x == 0 && B[i] % y == 0) continue;if (A[i] % y == 0 && B[i] % x == 0) continue;return 0;}return LCM(x, y);
}int main() {cin >> N;A.resize(N-1);B.resize(N-1);rep(t, 2) cin >> s[t];rep(i, N-1) cin >> A[i] >> B[i];rep(t, 2) {for (ll d = 1; d * d <= s[t]; d++) {if (s[t] % d == 0) {D[t].push_back(d);if (d * d != s[t]) D[t].push_back(s[t] / d);}}}ll ans = 0;for (ll d0 : D[0]) {for (ll d1 : D[1]) {ans = max(ans, solve(d0, d1));}}cout << ans << "\n";return 0;
}

第四题

#include <map>
#include <cstdio>
using namespace std;
#define int long longmap<int, int> mp;
int T, n;int solve(int n) {if (!n) return 0;if (mp[n]) return mp[n];int s = n / 10, r = n % 10;if (1 <= r && r <= 3 && solve(s) <= 1)return mp[n] = 1;if (2 <= r && r <= 6 && solve(s) <= 2)return mp[n] = 2;if (3 <= r && r <= 9 && solve(s) <= 3)return mp[n] = 3;if (4 <= r && r <= 9 && solve(s) <= 4)return mp[n] = 4;if (0 <= r && r <= 2 && solve(s - 1) <= 4)return mp[n] = 4;return mp[n] = 5;
}signed main() {scanf("%lld", &T);while (T--) {scanf("%lld", &n);printf("%lld\n", solve(n));}return 0;
}

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

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

相关文章

Android Studio的配置学习以及整日的总结

所花时间:5h 代码量(行):130 博客量:6 了解的知识点: 首先,今天对于Android Studio的整体配置有了一个新的认识,原因是AS的SDK和虚拟机AVD的默认安装位置在C盘 还有环境变量gradle的下载配置,这些都要了解明白是干什么的,下面我具体的说一下:安装好AS,下载好gradle…

额外添加 _网卡的配置,网络的基础的概念

配置好网卡,上网用 修改网络模式,修改静态ip,动态ip获取方式 system control 系统控制,systemctl 查看当前的上网信息 1.确保你的机器,是连接的网络的,是插上了网线的。(模拟了物理服务器的软件是什么?看你的虚拟的机器(vmware))3.编辑网卡的配置文件 编辑网卡配置文…

用集合说明可以用与或非来表示异或

用集合说明可以用与或非来表示异或 异或(XOR,记作 A⊕BA⊕B)可以通过与(AND,记作 ∧∧)、或(OR,记作 ∨∨)、非(NOT,记作 )的组合来表示。以下是两种常见的表达式形式: 1. 直接组合形式 异或的逻辑可以描述为:当且仅当 A 和 B不同时为真时输出真。 即:A B A⊕B0…

2025.3.10

1,访问PHP文件路径不能出现中文,会显示0行错误 2,<br>换行,<hr>分割线 3,“ ”解析并输出,‘ ’直接输出 4,字符串拼接用. 5,输出 echo "" print_r() 专门输出数组的格式 varr_dump() 数据类型和值6,二维数组

4.9.1 分布偏移的类型

下面介绍一下坐标系中协变量偏移的情况如上图,绿色的曲线是正确的曲线。我们训练的数据是左图,测试的数据是右图。按照左图的数据学习是学不出来绿色曲线的,就会导致右图的数据的准确率很低,这就是协变量偏移

贴现率8%和12%分别计算每个项目的净现值

使用贴现率8%和12%分别计算每个项目的净现值(NPV) JAVA实现 净现值求解实现代码(JAVA):package com.zuoye.Three;import java.math.BigDecimal;public class TieXianLu { public static void main(String[] args) throws Exception { //数据集合 int[] ma…

Netty基础—1.网络编程基础一

大纲 1.什么是OSI开放系统互连 2.OSI七层模型各层的作用 3.TCP/IP协议的简介 4.TCP和UDP的简介 5.TCP连接的三次握手 6.TCP连接的四次挥手 7.TCP/IP中的数据包 8.TCP通过确认应答与序列号提高可靠性 9.HTTP请求的传输过程 10.HTTP协议报文结构 11.Socket、短连接、长连接、网络…

硅基流动+Chatbox实现deepseek R1使用自由

解锁 DeepSeek R1 全能力:高性价比AI对话全流程指南🌟 用最低成本体验顶尖开源模型,对话成本低至 2 分钱/次!一、注册 SiliconFlow 领取千万Tokens▶️ 操作步骤:点击专属链接注册:https://cloud.siliconflow.cn/i/KoKtjLvD 手机验证码登录 → 立即获得 2000万 Tokens(…

3.1.1 线性回归的基本元素

看看批量梯度下降和小批量梯度下降的图形,与我们的理解是相符的注意到小批量梯度下降不是严格单减的,只是趋势是单调减少的(图中的纵轴Cost指的是对于整个训练数据的损失) 每次的批量的大小显然是一个超参数。当批量大小为\(1\)的时候叫做随机梯度下降,当批量大小为\(m\)的…

报错

SSM整合报org.springframework.beans.factory.NoSuchBeanDefinitionException 显示没有找到serviceImpl对应的bean,但@autowired显示正常原因:web.xml文件中没有配置监听器ContextLoaderListener,导致web服务器启动后,没有读取Spring的配置文件,使得bean没有注入到Spring的…

ssh登录ubuntu后终端不显示颜色

1、在 ~/.bashrc 文件找到 “#force_color_prompt=yes”,去掉前面的注释; 2、在 ~/.bash_profile文件种添加以下脚本,并执行 “source ~/.bash_profile”# if running bash if [ -n "$BASH_VERSION" ]; then # include .bashrc if it exists if [ -f "$…