全部评论 2

  • T6 策略分析参考代码

    #include <bits/stdc++.h>
    using namespace std;
    
    int main(){
        long long n,x;
        cin>>n>>x;
        if(n<0||n>1000000||x<0||x>1000000){
            cout<<"errornx"<<endl;
        }
    
        int flag=0;
        if(x>=1000000){
            flag=1;
        }
        for(int i=1;i<=n;i++){
            long long y,z;
            cin>>y>>z;
            if(y<0||y>1000000||z<0||z>1000000){
                cout<<"erroryz"<<endl;
            }
    
            if(z<=1){
                x=(x+y);
                if(x>=1000000){
                    flag=1;
                }
                x=x%1000000007;
            }
            else if(flag==1){
                x=x*z%1000000007;
            }
            else{
                if(x+y>x*z){
                    x=x+y;
                }
                else{
                    x=x*z;
                }
                if(x>=1000000){
                    flag=1;
                }
                x=x%1000000007;
            }
        }
        cout<<x<<endl;
        return 0;
    }
    

    昨天 来自 浙江

    0
  • T4 矩阵螺旋访问参考代码

    #include <bits/stdc++.h>
    using namespace std;
    int a[1010][1010];
    int main(){
        int n;
        cin>>n;
        if(n<0||n>1000){
            cout<<"errorn"<<endl;
        }
    
        for(int i=1;i<=n;i++){
            for(int j=1;j<=n;j++){
                cin>>a[i][j];
                if(a[i][j]<0||a[i][j]>1000000000){
                    cout<<"erroraij"<<endl;
                }
            }
        }
    
        int u=1;
        int d=n;
        int l=1;
        int r=n;
        int num=0;
        while(num<n*n){
            for(int j=l;j<=r;j++){
                cout<<a[u][j]<<" ";
                num++;
            }
            u++;
    
            for(int i=u;i<=d;i++){
                cout<<a[i][r]<<" ";
                num++;
            }
            r--;
            
            for(int j=r;j>=l;j--){
                cout<<a[d][j]<<" ";
                num++;
            }
            d--;
    
            for(int i=d;i>=u;i--){
                cout<<a[i][l]<<" ";
                num++;
            }
            l++;
        }
    
        return 0;
    }
    

    u,d,l,ru,d,l,r 分别表示还需要输出的上下左右的边界范围。

    昨天 来自 浙江

    0

热门讨论