Acwing第 38 场周赛完结

Posted 辉小歌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Acwing第 38 场周赛完结相关的知识,希望对你有一定的参考价值。

目录

4299. 删点【签到】


https://www.acwing.com/problem/content/4302/

#include<bits/stdc++.h>
using namespace std;
int n;
int main(void)

    cin>>n;
    int cnt1=0,cnt2=0;
    while(n--)
    
        int x,y; cin>>x>>y;
        if(x<0) cnt1++;
        else cnt2++;
    
    if(cnt1<=1||cnt2<=1) puts("Yes");
    else puts("No");
	return 0;

4300. 两种操作【BFS】


https://www.acwing.com/problem/content/4303/

#include<bits/stdc++.h>
using namespace std;
typedef long long int LL;
const int N=1e5*2+10;
int n,m;
int bfs()

    int st[N];
    memset(st,-1,sizeof st);
    queue<int>q; q.push(n); 
    st[n]=0;
    while(q.size())
    
        int temp=q.front(); q.pop();
        if(temp==m) 
        
            return st[temp];
        
        if(st[temp*2]==-1&&temp*2<=1e5)
        
            st[temp*2]=st[temp]+1;
            q.push(temp*2);

        
        if(st[temp-1]==-1&&temp>=0)
        
            st[temp-1]=st[temp]+1;
            q.push(temp-1);
        
    
    return -1;

int main(void)

    cin>>n>>m;
    cout<<bfs();
	return 0;

4301. 截断数列【枚举】


https://www.acwing.com/problem/content/4304/
数据范围很弱直接枚举即可。

#include<bits/stdc++.h>
using namespace std;
const int N=1e5*2+10;
int n,a[N];
string s; 
bool check(int x)

    int cnt=0,flag=0;
    for(int i=0;i<s.size();i++)
    
        cnt+=s[i]-'0';
        if(cnt==x) cnt=0,flag++;
        if(cnt>x)
        
            return false;
        
    
    if(flag>=2&&cnt==0)return true;
    else return false;

int main(void)

    cin>>n>>s;
    for(int i=0;i<=900;i++)
    
        if(check(i))
        
            puts("YES");
            return 0;
        
    
    puts("NO");
	return 0;

以上是关于Acwing第 38 场周赛完结的主要内容,如果未能解决你的问题,请参考以下文章

Acwing第 31 场周赛完结

Acwing第 36 场周赛完结

Acwing第 56 场周赛完结

Acwing第 32 场周赛完结

Acwing第 59 场周赛完结

Acwing第 35 场周赛完结