AtcoderABC309场

A - NineA - Nine

在这里插入图片描述在这里插入图片描述

题目大意

判断两个数是否相邻且水平排列,即它们在同一行并且相邻。可以直接打印或者找规律

思路分析

可以直接打印或者找规律

时间复杂度

O(1)

代码

#include<bits/stdc++.h>
using namespace std;
int main(){int a,b;cin>>a>>b;if(a%3!=0&&a+1==b) cout<<"Yes"<<endl;else cout<<"No"<<endl;
}

B - Rotate(B - Rotate)[https://atcoder.jp/contests/abc309/tasks/abc309_b]

在这里插入图片描述在这里插入图片描述在这里插入图片描述

题目大意

给定一个N×N的方格矩阵,每个方格上放置一个整数。顺时针对最外边界方格进行移动1格操作,而内部的方格保持不变。最后输出移动后的方格矩阵。

思路分析

可以使用一个二维数组来表示方格矩阵,然后遍历每个方格,判断是否为边界方格,如果是,则按规则进行移动,否则保持不变。
创建一个大小为N×N的二维数组a,用于存储输入的方格矩阵
创建一个大小为N×N的二维数组ans,用于存储移动后的方格矩阵

时间复杂度

O(N2)

题解代码

#include <iostream>
#include <vector>
using namespace std;int main() {int N;cin >> N;vector<vector<int>> a(N, vector<int>(N));for (int i = 0; i < N; i++) {string s;cin >> s;for (int j = 0; j < N; j++) {if (s[j] == '0')a[i][j] = 0;elsea[i][j] = 1;}}vector<vector<int>> ans(N, vector<int>(N));for (int i = 0; i < N; i++) {for (int j = 0; j < N; j++) {if (i == 0 || j == 0 || i == N - 1 || j == N - 1) {if (i == 0 && j < N - 1)ans[i][j + 1] = a[i][j];if (i < N - 1 && j == N - 1)ans[i + 1][j] = a[i][j];if (i == N - 1 && j > 0)ans[i][j - 1] = a[i][j];if (i > 0 && j == 0)ans[i - 1][j] = a[i][j];} else {ans[i][j] = a[i][j];}}}for (int i = 0; i < N; i++) {for (int j = 0; j < N; j++)cout << ans[i][j];cout << endl;}return 0;
}

#C - MedicineC - Medicine
在这里插入图片描述在这里插入图片描述在这里插入图片描述

题目大意

Snuke医生给Takahashi开了N种药物,从第一天(开药当天)开始,每天需要服用相应种类的药物。需要找到第一天或之后,他需要服用K颗或更少药丸的日期。

思路分析

用贪心算法。

  • 将药物按照数量升序排序。
  • 计算所有药物的总数量(即第一天)sum。
  • 如果总数量sum不超过K,则输出1。
  • 否则,遍历排序后的药物列表:
    每次减去当前药物的数量sum -= p[i].second。
  • 如果此时总数量sum不超过K,则说明找到了满足条件的日期,输出p[i-1].first+1。
  • 如果遍历结束仍未找到满足条件的日期,则输出p.back().first+1。

时间复杂度

O(NlogN)

代码

#include <bits/stdc++.h>
using namespace std;int main() {int N,K;cin>>N>>K;vector<pair<int,int>> p(N);for(int i=0;i<N;i++){cin>>p[i].first>>p[i].second;}sort(p.begin(),p.end());long long sum = 0;for(int i=0;i<N;i++){sum += p[i].second;}if(sum<=K)cout<<1<<endl;else{for(int i=0;i<p.size();i++){if(sum<=K){cout<<p[i-1].first+1<<endl;return 0;}sum -= p[i].second;}cout<<p.back().first+1<<endl;}return 0;
}

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

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

相关文章

LeetCode 打卡day59--单调栈

一个人的朝圣 — LeetCode打卡第59-60天 知识总结 Leetcode 739. 每日温度题目说明代码说明 Leetcode 496. 下一个更大元素 I题目说明代码说明 Leetcode 84. 柱状图中最大的矩形题目说明代码说明 知识总结 今天做了单调栈的三道题 总结了一个模版套路: 寻找下一个更大的数 f…

冯诺依曼体系结构理解

冯诺依曼体系结构理解 1.介绍2.特点介绍3.举例说明4.注意 1.介绍 冯诺依曼体系结构&#xff08;Von Neumann Architecture&#xff09;是一种计算机体系结构&#xff0c;以数学家冯诺依曼&#xff08;John von Neumann&#xff09;的名字命名。它是一种经典的计算机设计范式&a…

使用Python爬虫和数据可视化,揭示人口大国历年人数的变迁

前言 人口大国通常在全球人口排名中位居前列&#xff0c;其人口数量远远超过其他国家。而印度和中国这两个国家的人口数量均已经超过14亿&#xff0c;而当前全球的人口总数也不过刚刚突破80亿而已&#xff0c;妥妥的天花板级别存在。或许是中国和印度在人口方面的表现太过“耀…

ContOS7 Oracle11g 安装配置

配置yum源 cd /etc mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak mkdir yum.repos.d wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # 清理缓存 yum clean all # 建缓存 yum makecache #安装epel…

关于swagger突然跳转登录页面,swagger打开跳转login页面BUG

今天建了一个初始项目&#xff0c;引入swagger之后&#xff0c;启动调用&#xff0c;却总跳转到一个登录页面&#xff0c;手足无措 启动项目后&#xff0c;打开swagger进行测试&#xff0c;但是跳转到下图页面 最后原因是导入了security的包&#xff0c;导致权限安全拦截 注释…

短视频矩阵管理系统源码开发:视频批量剪辑,分发功能开发示例

短视频矩阵管理系统开发&#xff0c;首先对服务器要求&#xff1a; 源码所需服务器配置 1、规格&#xff1a;最低8核16G 2、硬盘&#xff1a;系统盘40-100G&#xff0c;数据盘不低于100G 3、带宽&#xff1a;10M 4、系统&#xff1a;CentOS7(务必选择7.*) 部署过程中&…

蓄电池风险监控,制造业必备!

在大型加工企业中&#xff0c;蓄电池被广泛应用于各种设备和系统&#xff0c;例如备用电源、起重设备、紧急照明等。蓄电池的可靠性和性能对于企业的正常运行至关重要。 因此&#xff0c;为了确保蓄电池的安全运行和有效管理&#xff0c;引入蓄电池监控系统成为必不可少的环节。…

100天精通Golang(基础入门篇)——第15天:深入解析Go语言中函数的应用:从基础到进阶,助您精通函数编程!(进阶)

&#x1f337; 博主 libin9iOak带您 Go to Golang Language.✨ &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &#x1f30a; 《I…

SQL事务与隔离

事务 事务的定义 事务是完成一个任务的多条语句,这些语句中,只要有一条语句失败,那么整个事务就会失败,即使之前的语句已经执行完毕也会被撤回 举个例子: 我去银行给王哥转钱,这个转钱呢分两个步骤,第一步先把我的钱拿出来,第二步把钱给王哥,那万一刚把我钱拿出来但是没到王…

Swift与OC的混编

一些场面话 在一位前辈的博客里看到了关于iOS开发的各种语言的混编&#xff0c;浅浅学习一下怎么使用。不得不说语言混编的开发者是真的&#x1f42e;&#x1f37a; Swift中用OC混编 新建一个Swift文件 创建一个OC的类 选择language为OC 继续往下走&#xff0c;会跳出这个界…

css基础知识二十:说说对Css预编语言的理解?有哪些区别?

一、是什么 Css 作为一门标记性语言&#xff0c;语法相对简单&#xff0c;对使用者的要求较低&#xff0c;但同时也带来一些问题 需要书写大量看似没有逻辑的代码&#xff0c;不方便维护及扩展&#xff0c;不利于复用&#xff0c;尤其对于非前端开发工程师来讲&#xff0c;往…

【Spring Boot】Spring Boot日志详情:基于lombok的日志输出

文章目录 1. 何为日志文件&#xff1f;2. 日志文件的作用3. 日志文件的基本使用3.1 Spring Boot中的日志3.2 自定义日志打印 4 日志级别4.1 日志级别的作用4.2 日志级别的分类4.3 日志级别的设置 5 日志持久化6 基于lombok的日志输出6.1 lombok 简单输出日志案例6.2 浅谈 lombo…