zl程序教程

您现在的位置是:首页 >  其它

当前栏目

Acwing第 47 场周赛【完结】

AcWing 47 周赛 完结
2023-09-11 14:15:52 时间

https://www.acwing.com/activity/content/competition/problem_list/1651/

4399. 数字母【签到】

#include<bits/stdc++.h>
using namespace std;
int main(void)
{
	string s; 
	getline(cin,s);
	set<char>st;
	for(int i=0;i<s.size();i++) if(s[i]>='a'&&s[i]<='z') st.insert(s[i]);
	cout<<st.size(); 
	return 0;
}

4400. 玩游戏【模拟】

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int n,m,t,k;
int a[N];
int main(void)
{ 
    cin>>n>>k;
    deque<int>q;
    for(int i=1;i<=k;i++) scanf("%d",&a[i]);
    for(int i=1;i<=n;i++) q.push_back(i);
    for(int z=1;z<=k;z++)
    {
        int u=q.front();
        for(int i=0;i<a[z]%q.size();i++)
        {
            auto temp=q.front();
            q.pop_front();
            q.push_back(temp);
        }
        printf("%d ",q.front());
        q.pop_front();
    }
	return 0;
}

4401. 找回数组【差分 / 模拟 /枚举】

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
const int N=1e3+10;
int n,m,t;
int a[N],b[N],c[N];
int main(void)
{ 
    cin>>n;
    for(int i=1;i<=n;i++) cin>>a[i];
    vector<int>ve;
    for(int i=1;i<=n;i++)
    {
        
         memset(b,0,sizeof b);
         for(int j=1;j<=i;j++) c[j]=a[j]-a[j-1];
         int sum=0,flag=0,k=1;
         for(int j=1;j<=n;j++)
         {
             sum=sum+c[k];
             if(sum!=a[j]) flag=1;
             if(flag) break;
             k++;
             if(k==i+1) k=1;
         }
         if(!flag) ve.push_back(i);
    }
    cout<<ve.size()<<endl;
    for(int i=0;i<ve.size();i++) cout<<ve[i]<<" ";
	return 0;
}