【CodeForces训练记录】Codeforces Round 981 (Div. 3)

news/2024/10/25 0:55:54

https://codeforces.com/contest/2033

训练情况

22队长率先开出E题,但是结局可能还是掉分了 TAT

赛后反思

这场太板了,D题有点反常(存疑?)

A题

我们直接模拟位置的变化就行,先手 \(-2 \times i - 1\) 后手 \(+ 2 \times i - 1\),用一个while找到 \(>n\) 的地方来结束循环即可。

#include <bits/stdc++.h>
#define int long longusing namespace std;void solve(){int n; cin>>n;int now = 0;int i = 0;bool flag = false;while(abs(now)<=n){i++;if(!flag) now -= 2*i-1;else now += 2*i-1;flag = !flag;}if(flag) cout<<"Sakurako"<<endl;else cout<<"Kosuke"<<endl;
}signed main(){int T; cin>>T; while(T--)solve();return 0;
}

B题

我们考虑对角线要尽可能大,操作一次尽可能覆盖最多的点,所以我们只需要维护正方形上每条对角线负数绝对值的最大值即可,最后求和。

#include <bits/stdc++.h>
#define int long longusing namespace std;void solve(){int n; cin>>n;vector<vector<int>> a(n+1,vector<int>(n + 1));for(int i = 1;i<=n;i++){for(int j = 1;j<=n;j++){cin>>a[i][j];}}vector<int> vis(3*n + 1);for(int i = 1;i<=n;i++){for(int j = 1;j<=n;j++){if(a[i][j]<0) vis[i+n-j] = max(vis[i+n-j],-a[i][j]);}}int ans = 0;for(int i = 1;i<=3*n;i++) ans+=vis[i];cout<<ans<<endl;
}signed main(){int T; cin>>T; while(T--)solve();return 0;
}

C题

一个我不会证明的贪心,我们考虑换之前和换之后对答案的贡献,如果换之后答案更小就换,最后再找 \(a_i = a_{i-1}\) 的对数即可。

#include <bits/stdc++.h>
#define int long longusing namespace std;void solve(){int n; cin>>n;vector<int> a(n + 3);for(int i = 1;i<=n;i++) cin>>a[i];for(int i = 1;i<=n/2;i++){int j = n-i+1;int cnt1 = 0;int cnt2 = 0;if(a[i] == a[i-1]) cnt1++;if(a[j] == a[j+1]) cnt1++;if(a[j] == a[i-1]) cnt2++;if(a[i] == a[j+1]) cnt2++;if(cnt1 > cnt2) swap(a[i],a[j]);}int ans = 0;for(int i = 2;i<=n;i++){if(a[i] == a[i-1]) ans++;}cout<<ans<<endl;
}signed main(){int T; cin>>T; while(T--)solve();return 0;
}

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

东山Pi柒号-4-STM32MP157 TF-A移植

STM32MP157 TF-A 移植 在了解了 STM32MP 系列芯片的启动流程后,我们将开始进行东山 Pi 柒号的 TF-A 移植。 准备工作 首先,我们需要下载 STM32MP1 系列的 STM32MPU_Developer_Package,该包中包含编译器 SDK 和官方源码:STM32MP1 OpenSTLinux 开发套件 https://www.st.com.c…

7-1将数组中的数逆序存放

24级一维数组 题目不难,就是格式啥的要看仔细楼#include<stdio.h> int main (){int a[11] = {0};int num;int input;scanf("%d",&num);for(int i=num-1;i>=0;i--){//逆序存放!!!scanf("%d",&input);a[i] = input;}for(int i=0;i<n…

【投资理财】一起来探索金融理财世界啦

各位程序员小伙伴们,大家都知道最近大 A 股市那叫一个起伏不定啊,就像坐过山车似的,刺激得很。咱程序员平时工作忙归忙,但不少同学对炒股还挺感兴趣的,甚至有的同学在工作的时候还会偷偷摸摸瞅几眼股市行情😜。我最近发现了一些很不错的金融理财资源,想着赶紧分享给大家…

无法删除文件,因为已在Windows资源管理器中打开

背景 文件夹/文件删不掉 解决 直接重启explorer即可。 win+x,a 打开终端。 kill -name explorer按理来说关闭后explorer会自动重启 start explorer图形界面方式 Ctrl+Shift+ESC,打开任务管理器。 点击详细信息,按名称排序找到explorer.exe,右键重新启动。

学习高校课程-软件设计模式-单例模式(lec5)

原文链接 Singleton: Intent Singleton is a creational design pattern that lets you ensure that a class has only one instance, while providing a global access point to this instance. Singleton 是一种创建性设计模式,它允许您确保一个类只有一个实例,同时提供对此…

手动上传图片,怎么调整大小和居中

原始格式![image](https://img2024.cnblogs.com/blog/2143851/202410/2143851-20241024173243352-290268296.png ) 目标格式<img src="https://img2024.cnblogs.com/blog/2143851/202410/2143851-20241024173243352-290268296.png" alt="image-2024070120285…

关于C语言指针类型的总结

关于C语言指针类型的总结前言 我个人将目前在C语言中所遇到的指针归类为8种,至于为何写第九点,是因为我个人认为第九点极容易与第五点混淆,故总结如下: 1.普通指针普通指针即最常见的如:int * 、 char*等 甚至于也可将一个数组如arr[5]的数组名arr看作是指针类型(因为指…