Codeforces Round 955 (Div. 2, with prizes from NEAR!) codeforces div2 955
A. Soccer
------------------------题解---------------
给你开始比分和结束比分问你中间两队比分有没有相等过有可能就是YES不可能就是NO
结束时两队比分肯定>=各自队伍开始时比分,我们只需要让开始时大的先到达结束比分,再让开始时落后的比分到达结束时比分,只需要在心中模拟这个过程
最后就能写出一个O1的if 判断
点击查看代码
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=2e5+10;
ll a[N],b[N],c[N];
bool vis[N];
pair<ll,ll> p[N];
int main()
{
ll t;
cin>>t;
while(t--)
{
ll a,b,c,d;
cin>>a>>b>>c>>d;
if(a<b&&c<d) cout<<"YES"<<'\n';
else if(b<a&&d<c) cout<<"YES"<<'\n';
else cout<<"NO"<<'\n';
}
}
B


-------------------------------题解-----------------------------
按照过程模拟就行,稍微优化一下把+1的过程编程x一下加到能被y整除的过程,只要每进行一次操作后x能被y整除就一直除以y
点击查看代码
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=2e5+10;
ll a[N],b[N],c[N];
bool vis[N];
pair<ll,ll> p[N];
int main()
{
ll t;
cin>>t;
while(t--)
{
ll x,y,k;
cin>>x>>y>>k;
/* if(x<y)
{
if(k>=y-(x%y)) cout<<1+(k-(y-(x%y)))%y<<'\n';
else cout<<x+k<<'\n';
}
else if(y-(x%y)>k) cout<<x+k<<'\n';
else
{*/
ll num=x;
num++;
k--;
int jud=0;
while(num!=1)
{ jud++;
// cout<<num<<" "<<k<<" "<<y<<endl;
if(num%y==0)
{
while(num%y==0) num=num/y;
//cout<<num<<endl;
}
else if(k>=y-(num%y))
{
k-=(y-(num%y));
num+=(y-(num%y));
while(num%y==0) num=num/y;
//
// cout<<1<<endl;
}
else break;
if(k==0) break;
}
// cout<<num<<" "<<k<<endl;
ll w=num+k;
if(num==1) w=1+(k%(y-1));
// while(w%y==0) w=w/y;
cout<<w<<'\n';
}
}
C Boring Day

-----------------------------题解----------------------------
O(n)的线性模拟一下就好 按照以下决策
设置一个sum
sum+=a[i]只要sum到了l和r的范围就立马不拿了 cnt++
超了也不拿了 cnt不变
按照这个决策模拟便是正确答案
点击查看代码
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=2e5+10;
ll a[N],b[N],c[N];
bool vis[N];
pair<ll,ll> p[N];
int main()
{
ll t;
cin>>t;
while(t--)
{
ll n,l,r;
cin>>n>>l>>r;
for(ll i=1;i<=n;i++) cin>>a[i];
// sort(a+1,a+1+n);
ll sum=0;
ll cnt=0;
ll l1=1;
for(ll i=1;i<=n;i++)
{
sum+=a[i];
if(sum>=l&&sum<=r) cnt++,sum=0,l1=i+1;
else if(sum>r)
{
while(sum>r)
{
sum-=a[l1];
l1++;
}
if(sum<=r&&sum>=l) cnt++,l1=i+1,sum=0;
}
}
cout<<cnt<<'\n';
}
}
D. Beauty of the mountains


------------------------------题解----------------------------
先把所有0与1位置上的和加起来称为sum 这需要遍历nm中 每一个kk方块中0 与 1的绝对值差 然后再看这些绝对值差(假设为有两个绝对值差分别为x,y) 则要看k1x+k2y是否能==sum
我们需要知道一个事情,只要这个sum与n个绝对值差求gcd 最后求出来的结果==1 那便是符合根据这个判断即可,,,这里这个题的关键就结束了,为了避免超时,我们还需要注意用二位前缀和优化一下记录各个区块内0和1的差值PS:比赛二位前缀和这里挂了不然出了.
点击查看代码
#include<bits/stdc++.h>
using namespace std;
const int N=510;
int a[N][N];
char b[N][N];
int n,m,k;
int c[N][N];
void solve()
{
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
if(b[i][j]=='1') c[i][j]=1;
else c[i][j]= -1;
c[i][j]+=c[i][j-1]+c[i-1][j]-c[i-1][j-1];
}
}
}
int main()
{
int t;
cin>>t;
while(t--)
{
cin>>n>>m>>k;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++) cin>>a[i][j];
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++) cin>>b[i][j];
}
int s1=0,s0=0;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
if(b[i][j]=='1') s1+=a[i][j];
else s0+=a[i][j];
}
}
int s3=abs(s1-s0);
int jud=1;
if(s3==0)
{
cout<<"YES"<<'\n';
continue;
}
//cout<<s3<<endl;
int e=-2;
solve();
/* for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cout<<c[i][j]<<" ";
}
cout<<endl;
}*/
if(jud!=0){
for(int i=1;i<=n-k+1;i++)
{
for(int j=1;j<=m-k+1;j++)
{
int num=(c[i+k-1][j+k-1]-c[i-1][j+k-1]-c[i+k-1][j-1]+c[i-1][j-1]);
if(e==-2&&num!=0) e=num;
else if(num!=0) e=__gcd(e,abs(num));
//cout<<num<<endl;
// cout<<e<<endl;
}
}
}
if(s3%e==0||e==0) cout<<"YES"<<'\n';
else cout<<"NO"<<'\n';
}
}
/*
1
3 4 3
46 49 50 1
19 30 23 12
30 25 1 46
1000
0100
0010
*/
Codeforces Round 955 (Div. 2, with prizes from NEAR!) codeforces div2 955的更多相关文章
- Codeforces Round #427 (Div. 2) Problem D Palindromic characteristics (Codeforces 835D) - 记忆化搜索
Palindromic characteristics of string s with length |s| is a sequence of |s| integers, where k-th nu ...
- Codeforces Round #427 (Div. 2) Problem C Star sky (Codeforces 835C) - 前缀和
The Cartesian coordinate system is set in the sky. There you can see n stars, the i-th has coordinat ...
- Codeforces Round #427 (Div. 2) Problem A Key races (Codeforces 835 A)
Two boys decided to compete in text typing on the site "Key races". During the competition ...
- Codeforces Round #425 (Div. 2) Problem C Strange Radiation (Codeforces 832C) - 二分答案 - 数论
n people are standing on a coordinate axis in points with positive integer coordinates strictly less ...
- Codeforces Round #258 (Div. 2)[ABCD]
Codeforces Round #258 (Div. 2)[ABCD] ACM 题目地址:Codeforces Round #258 (Div. 2) A - Game With Sticks 题意 ...
- Codeforces Round #500 (Div. 2) [based on EJOI]
Codeforces Round #500 (Div. 2) [based on EJOI] https://codeforces.com/contest/1013 A #include<bit ...
- Codeforces Round #518 (Div. 2) [Thanks, Mail.Ru!]
Codeforces Round #518 (Div. 2) [Thanks, Mail.Ru!] https://codeforces.com/contest/1068 A #include< ...
- Codeforces Round #261 (Div. 2)[ABCDE]
Codeforces Round #261 (Div. 2)[ABCDE] ACM 题目地址:Codeforces Round #261 (Div. 2) A - Pashmak and Garden ...
- Codeforces Round #547 (Div. 3) 题解
Codeforces Round #547 (Div. 3) 题目链接:https://codeforces.com/contest/1141 A,B咕咕了... C. Polycarp Restor ...
- Codeforces Round #546 (Div. 2) 题解
Codeforces Round #546 (Div. 2) 题目链接:https://codeforces.com/contest/1136 A. Nastya Is Reading a Book ...
随机推荐
- 数仓OLAP技术
数据应用,是真正体现数仓价值的部分,包括且又不局限于 数据可视化.BI.OLAP.即席查询,实时大屏,用户画像,推荐系统,数据分析,数据挖掘,人脸识别,风控反欺诈,ABtest等等 OLAP(On-L ...
- Golang重复Rails Devise gem密码加密
https://github.com/haimait/go-devise-encryptor package main import ( "fmt" //devisecrypto ...
- 🔥httpsok-v1.8.1 一分钟搞定SSL证书自动续期
httpsok-v1.8.1 一分钟搞定SSL证书自动续期 简介 一行命令,一分钟轻松搞定SSL证书自动续期 httpsok 是一个便捷的 HTTPS 证书自动续签工具,专为 Nginx 服务器设计. ...
- 如果win报错无法加载文件 C:\Users\xx\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本
点击查看代码 Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
- sass 混合指令 (Mixin Directives)详解
混合指令(Mixin)用于定义可重复使用的样式,避免了使用无语意的 class,比如 .float-left.混合指令可以包含所有的 CSS 规则,绝大部分 Sass 规则,甚至通过参数功能引入变 ...
- linux下srpm源码包的使用和安装
目录 一.关于srpm包 二.srpm包和rpm包的区别 三.不对srpm包做修改,直接安装srpm包 四.对srpm包的源码进行修改,然后安装srpm包 一.关于srpm包 SRPM包是Sour ...
- Linux搭建ESP-IDF开发环境
下载esp-gitee-tools git clone git@gitee.com:EspressifSystems/esp-gitee-tools.git 替换github网址 cd esp-git ...
- 利用英特尔 Gaudi 2 和至强 CPU 构建经济高效的企业级 RAG 应用
检索增强生成 (Retrieval Augmented Generation,RAG) 可将存储在外部数据库中的新鲜领域知识纳入大语言模型以增强其文本生成能力.其提供了一种将公司数据与训练期间语言模型 ...
- Flask源码阅读
上下文篇 整个Flask生命周期中都依赖LocalStack()栈?.而LocalStack()分为请求上下文_request_ctx_stack和应用上下文_app_ctx_stack. _requ ...
- Native如何使用Tunnel Mode
mAudioSessionId = AudioSystem::newAudioUniqueId(AUDIO_UNIQUE_ID_USE_SESSION); mHwSync = AudioSystem: ...