• Codeforces Round #609 题解


    A题

    大水题,从2枚举判断素数找到一组答案即可

    B题

    思维题,先对b数组排序,因为我们知道肯定存在答案,所以我们只要枚举每个a[i],使得x=b[1]-a[i](在同余的情况下,具体表达看代码),然后枚举x看看哪个是符合条件并且是最小的

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<string>
    #include<cmath>
    #include<map>
    #include<algorithm>
    using namespace std;
    typedef long long ll;
    const int N=2110;
    int a[N],b[N],c[N];
    int x[N];
    int main(){
       int n,m;
       cin>>n>>m;
       int i;
       for(i=1;i<=n;i++)
       cin>>a[i];
       for(i=1;i<=n;i++)
       cin>>b[i];
       sort(b+1,b+n+1);
       for(i=1;i<=n;i++)
       x[i]=(b[1]-a[i]+m)%m;
       int res=0x3f3f3f3f;
       for(i=1;i<=n;i++){
           int j;
           for(j=1;j<=n;j++)
           c[j]=(a[j]+x[i])%m;
           sort(c+1,c+n+1);
           for(j=1;j<=n;j++)
           if(c[j]!=b[j])
           break;
           if(j==n+1)
           res=min(res,x[i]);
       }
       cout<<res<<endl; 
    }
     
    View Code

    C题

    循环题目因为长度很长先看循环节,因为k后面的字符数组只被k前面的决定,而我们要找最小,首先把原始数组的前k个作为初始循环节,更新后,假如比原数组大,那么这肯定是答案。

    如果比原数组小,那么我们就要考虑增大循环节并且是答案最小,那么显然只需要更改k-1这个位置也就是最后位置即可,因为这样保证更改是最小且比原数组大,注意进位判断。

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<string>
    #include<cmath>
    #include<map>
    #include<algorithm>
    using namespace std;
    typedef long long ll;
    const int N=211000;
    char res[N];
    char s[N];
    int main(){
       int n,k;
       cin>>n>>k;
       cin>>s;
       int i;
       for(i=0;i<n;i++)
       res[i]=s[i%k];
       if(strcmp(res,s)>=0){
           cout<<strlen(res)<<endl;
           cout<<res<<endl;
        return 0;    
       }
       int t=k-1;
       res[t]++;
       while(res[t]-'0'>=10){
           res[t]='0';
           res[t-1]++;
           t--;
       }
       for(i=0;i<n;i++)
       res[i]=res[i%k];
       cout<<strlen(res)<<endl;
       cout<<res<<endl;
    }
     
    View Code
  • 相关阅读:
    WPF listbox 实现动态滚轮下拉定位
    VS的安装和入门使用
    pyqt5学习之菜单栏,工具栏,状态栏
    pyqt5学习之QSpinBox
    pyqt5环境安装
    pyqt5学习之QKeySequeueEdit
    pyqt5学习之QPainTextEditer
    pyqt5学习之QTextEditer
    pyqt5学习之QABstractScrollArea
    pyqt5学习之QFrame
  • 原文地址:https://www.cnblogs.com/ctyakwf/p/12228201.html
Copyright © 2020-2023  润新知