拼题A 2024 跨年挑战赛

PTA | 程序设计类实验辅助教学平台

目录

跨年-1 特殊的年份

跨年-2 穿什么衣服

跨年-3 按比例发奖

跨年-4 骗钱的手机游戏

 跨年-5 找年兽

 跨年-6 新年烟花

跨年-7 奇因子之和

跨年-8 翻箱倒柜(复刻)


跨年-1 特殊的年份

直接枚举就行了

signed main()
{ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0);for (int i = 1; i <= 1e9; i++) {if (i % 23 == 0 && i % 11 == 0 && i % 8 == 0) {printf("%04d is a special year!", i);return 0;}}
}

跨年-2 穿什么衣服

if else 讨论一下

signed main()
{ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0);int n;cin >> n;if (n >= 15 && n < 30) {cout << n << ' ' << "Mama";}else if (n >= -10 && n < 15) {cout << n << ' ' << "YuRongFu";}else {cout << n << ' ' << "Zhai";}
}

跨年-3 按比例发奖

按比例 n/10  n/40  n划分

signed main()
{ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0);int n, m;cin >> n >> m;while (m--){int x;cin >> x;if (x <= n / 10) {cout << 1 << '\n';}else if(x<=n/10*4){cout << 2 << '\n';}else {cout << 3 << '\n';}}
}

跨年-4 骗钱的手机游戏

从左到右,如果是不带'+'的就两个合成下一个,带'+'的3个合成下一个,同时取模的话就是剩下合成不了的

signed main()
{ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0);int cnt = 0;for (int i = 1; i <= 9; i++) {int x;cin >> x;x += cnt;if (i == 9) {cout << x;return 0;}if (i & 1) {cnt = x / 2;cout << x % 2 << ' ';}else {cnt = x / 3;cout << x % 3<<' ';}}
}

 跨年-5 找年兽

本来想写kmp发现这复杂度直接暴力匹配就能过了

signed main()
{ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0);string s;getline(cin, s);int n = s.size();s += "         ";int f = inf, cnt = 0;for (int i = 0; i < n; i++) {if (s[i] == 'N' && s[i + 1] == 'i' && s[i + 2] == 'a' && s[i + 3] == 'n') {cnt++;f = min(f, i);}}if (!cnt) {cout << 0 <<' '<< -1 ;}else {cout << cnt << ' ' << f << '\n';}
}

 跨年-6 新年烟花

直接枚举矩阵上的每一个点,从每一个点的上下左右出发 ,看看能发现多少烟花,同时如果找身高比h大的就直接结束,最后更新一下最优解,和总个数

const int N = 50 + 5;
int a[N][N];
signed main()
{ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0);int n, m, h;cin >> n >> m >> h;for (int i = 1; i <= n; i++){for (int j = 1; j <= m; j++) {cin >> a[i][j];}}PII res = { 0,0 };int tot = 0;int maxx = 0;for (int i = 1; i <= n; i++) {for (int j = 1; j <= m; j++) {int cnt = 0;if (a[i][j] == 0) {for (int k = j + 1; k <= m; k++) {if (a[i][k] >= h) break;else {if (a[i][k] < 0) {cnt++;}}}for (int k = j - 1; k >= 1; k--) {if (a[i][k] >= h) break;else {if (a[i][k] < 0) {cnt++;}}}for (int k = i + 1; k <= n; k++) {if (a[k][j] >= h) break;else {if (a[k][j] < 0) {cnt++;}}}for (int k = i - 1; k >= 1; k--) {if (a[k][j] >= h) break;else {if (a[k][j] < 0) {cnt++;}}}if (cnt >= 3) {tot++;}if (cnt > maxx) {maxx = cnt;res = { i-1,j-1 };}}}}cout << tot << '\n';cout << res.first << ' ' << res.second;
}

跨年-7 奇因子之和

直接分解质因数,把奇因子存入vector中,最后再对vector进行排序

如果只有一个数就取他的最大值

如果不止一个数就把他的最大值删掉,这样vector.back()就是次大值了

signed main()
{ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0);int n;cin >> n;int res = 0;for (int i = 1; i <= n; i++) {int x;cin >> x;vector<int>p;for (int i = 1; i <= sqrt(x); i++) {if (x % i == 0) {if (i & 1) {p.push_back(i);}if ((x / i) & 1) {if (p.size() && p.back() != (x / i)) {p.push_back(x / i);}}}}sort(p.begin(), p.end());if (p.size() == 1) {res += p.back();}else {p.pop_back();res += p.back();}}cout << res << '\n';
}

跨年-8 翻箱倒柜(复刻)

令P=131

用一个hash记录a,b,c-->(a * P * P + b * P + c)帮助我们快速匹配

再用一个map,用来存放结果

const int P = 131;
map<int, pair<int, string>>mp;
signed main()
{ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0);int n;cin >> n;for (int i = 1; i <= n; i++) {int a, b, c;cin >> a >> b >> c;string s;cin >> s;int res = a * P * P + b * P + c;mp[res] = { i,s };}int k;cin >> k;while (k--){int a, b, c;cin >> a >> b >> c;int res = a * P * P + b * P + c;if (mp.count(res)) {cout << mp[res].first << ' ' << mp[res].second << '\n';}else {cout << "Not Found\n";}}
}

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

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

相关文章

240101-5步MacOS自带软件无损快速导出iPhone照片

硬件准备&#xff1a; iphone手机Mac电脑数据线 操作步骤&#xff1a; Step 1: 找到并打开MacOS自带的图像捕捉 Step 2: 通过数据线将iphone与电脑连接Step 3&#xff1a;iphone与电脑提示“是否授权“&#xff1f; >>> “是“Step 4&#xff1a;左上角选择自己的设…

springboot3+vue3实现大文件分片上传和断点续传

大文件分片上传和断点续传 大文件分片上传是一种将大文件切分成小片段进行上传的策略。这种上传方式有以下几个主要原因和优势&#xff1a; 网络稳定性&#xff1a;大文件的上传需要较长时间&#xff0c;而网络连接可能会不稳定或中断。通过将文件切分成小片段进行上传&#xf…

低延时视频技术的应用场景和挑战

编者按 无线网络对人们的生活产生了巨大的影响&#xff0c;而5G技术的引入将彻底改变我们与世界互联互通的方式。在5G时代&#xff0c;实现万物互联离不开低延时技术的应用。 LiveVideoStackCon 2023 深圳站邀请到秒点科技的CEO扶凯&#xff0c;为大家分享低延时技术在物联网、…

【CF比赛记录】—— Good Bye 2023(A、B、C)

&#x1f30f;博客主页&#xff1a;PH_modest的博客主页 &#x1f6a9;当前专栏&#xff1a;CF比赛记录 &#x1f48c;其他专栏&#xff1a; &#x1f534;每日一题 &#x1f7e1; cf闯关练习 &#x1f7e2; C语言跬步积累 &#x1f308;座右铭&#xff1a;广积粮&#xff0c;缓…

Big-endian与Little-endian详尽说明

大端与小端存储详尽说明 大端与小端存储详尽说明 大端与小端存储详尽说明一. 什么是字节序二. 什么是大端存储模式三. 什么是小端存储模式四. 大小端各自的特点五. 为什么会有大小端模式之分六. 为什么要注意大小端问题六. 大小端判定程序七. 大端小端的转换1&#xff09;16位大…

详解Vue3中的鼠标事件mousedown、mouseup和contextmenu

本文主要介绍Vue3中的常见鼠标事件mousedown、mouseup和contextmenu。 目录 一、mousedown——鼠标按下事件二、mouseup——鼠标弹起事件三、contextmenu——页面菜单 下面是Vue 3中常用的鼠标事件mousedown、mouseup和contextmenu的详解。 一、mousedown——鼠标按下事件 mo…

当你的电脑在安装Windows更新后出现问题时怎么办,这里提供办法

Windows更新通常会为你的电脑带来错误修复、安全补丁和新功能,但它们也可能会带来性能下降甚至引发恐慌的数据丢失等问题,从而适得其反。如果你在安装更新后发现了一些奇怪之处,你可以将其回滚,尝试重新启动。 Windows更新主要有两种:质量更新和功能更新。高质量的更新包…

19.JavaSE

一、JavaSE。 &#xff08;1&#xff09;IO流。 1.字节字符流 2.标准流打印流对象流 &#xff08;2&#xff09;集合。 1.List/Set/Queue/Map集合 2.properties集合 &#xff08;3&#xff09;多线程。 1.线程创建的…

vmware安装openEuler 22.03 LTS操作系统

vmware安装openEuler 22.03 LTS操作系统 1、下载openEuler操作系统镜像文件2、安装openEuler操作系统3、配置openEuler操作系统3.1、配置静态IP地址 和 dns3.2、查看磁盘分区3.3、查看系统版本 1、下载openEuler操作系统镜像文件 官网下载链接 链接: https://www.openeuler.or…

Java数据库

一.数据模型 数据库 表--->数据 二.sql 基础语法 1.SQL语句可以单行或多行书写&#xff0c;以分号结尾 2.SQL语句可以使用空格/缩进来增强语句的可读性 3.MySQL数据库的SQL语句不区分大小写 4.- 单行注释&#xff1a;-- 注释内容 或 # 注释内容(MySQL特有) - 多行…

2022-2023年度广东省职业院校学生专业技能大赛“软件测试”赛项接口测试训练题目

接口测试 新增接口脚本编写和执行测试,并执行脚本。 (1)商品单位添加接口描述如下: 接口功能:提供商品单位新增处理。 接口地址(根据实际系统IP及端口自行替换): http://XX.XX.XX.XX:XXXX/prod-api/manager/category/add。 请求方式:POST。 请求参数:

【2023年终总结:轻舟已过万重山】

&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308; 欢迎关注公众号&#xff08;通过文章导读关注&#xff09;&#xff0c;发送【资料】可领取 深入理解 Redis 系列文章结合电商场景讲解 Redis 使用场景、中间件系列…

数据结构期末复习(fengkao课堂)

学习数据结构时&#xff0c;以下建议可能对您有所帮助&#xff1a; 理解基本概念&#xff1a;首先&#xff0c;确保您理解数据结构的基本概念&#xff0c;例如数组、链表、栈、队列、树、图等。了解它们的定义、特点和基本操作。 学习时间复杂度和空间复杂度&#xff1a;了解如…

Docker support for NVIDIA GPU Accelerated Computing on WSL 2

Docker support for NVIDIA GPU Accelerated Computing on WSL 2 0. 背景1. 安装 Docker Desktop2. 配置 Docker Desktop3. WLS Ubuntu 配置4. 安装 Docker-ce5. 安装 NVIDIA Container Toolkit6. 配置 Docker7. 运行一个 Sample Workload 0. 背景 今天尝试一下 NVIDIA GPU 在…

IoT 物联网常用协议

物联网协议是指在物联网环境中用于设备间通信和数据传输的协议。根据不同的作用&#xff0c;物联网协议可分为传输协议、通信协议和行业协议。 传输协议&#xff1a;一般负责子网内设备间的组网及通信。例如 Wi-Fi、Ethernet、NFC、 Zigbee、Bluetooth、GPRS、3G/4G/5G等。这些…

公司电脑文件防泄密|防止内部终端核心文件数据 \ 资料外泄

PC端访问地址&#xff1a; https://isite.baidu.com/site/wjz012xr/2eae091d-1b97-4276-90bc-6757c5dfedee 为了防止公司电脑文件泄密&#xff0c;可以采取以下措施&#xff1a; 文件加密&#xff1a;对重要文件进行加密是一种有效的防泄密方法。通过使用加密算法&#xff0c;…

Linux学习之系统编程1(关于读写系统函数)

写在前面&#xff1a; 我的Linux的学习之路非常坎坷。第一次学习Linux是在大一下的开学没多久&#xff0c;结果因为不会安装VMware就无疾而终了&#xff0c;可以说是没开始就失败了。第二次学习Linux是在大一下快放暑假&#xff08;那个时候刚刚过完考试周&#xff09;&#xf…

Pandas教程(四)—— 分层索引及数据联合

1.分层索引 分层索引就是在一个轴上拥有多个&#xff08;两个及以上&#xff09;索引级别&#xff0c;能以低维度形式处理高维度数据。 行索引有两层 1.1 分层索引的创建 1.1.1 方式一&#xff1a;直接设置 1&#xff09;在创建series、dataframe或读取文件时时&#xff0c;行…

[蓝桥杯基础题型] 图论题目

遍历 添加路障 首先答案只能是0 1 2 &#xff0c;原因&#xff1a;把出发点堵住只需要两个路障 路障为0&#xff1a;不能找到一条从出发点到终点的路 路障为1&#xff1a;能找到一条从出发点到终点的路&#xff0c;但是只有一条 路障为2&#xff1a;能找到一条从出发点到终…

Linux搭建我的世界Mohist1.20.2版服务器教程,MOD和插件服开服教程,MC开服教程

雨云游戏云VPS服务器用Linux搭建MCSM面板和Minecraft Mohist 1.20.2服务器教程&#xff0c;我的世界MOD和插件服开服教程。 本教程演示安装的MC服是Mohist 1.20.2版&#xff0c;其他版本也可以参考本教程&#xff0c;差别不大。 本教程使用Docker来运行mc服&#xff0c;可以方…