• 2021 年第十三届四川省 ACM-ICPC 大学生程序设计竞赛


    传送门

    A.Chuanpai

    int main(){
            int _=read;
            while(_--){
                int n=read,res=0;
                rep(i,1,6)
                	rep(j,1,i)
                		if(i+j==n) res++;
                cout<<res<<endl;
            }
    	    return 0;
    }
    

    B.Hotpot

    int n,k,m,a[maxn],b[maxn],c[maxn];
    
    int main(){
    	int _=read;
    	while(_--){
    		n=read,k=read,m=read;
    		rep(i,1,k) b[i]=0;
    		rep(i,1,n) a[i]=read,c[i]=0;
    		for(int i=1;i<=min(2*n,m);i++){
    			int t=i%n;
    			if(!t) t=n;
    			if(b[a[t]]) c[t]++,b[a[t]]=0;
    			else b[a[t]]=1;
    		}
    		if(m>2*n){
    			int t1=m/(2*n),t2=m%(2*n);
    			rep(i,1,n) c[i]=c[i]*t1;
    			rep(i,1,k) b[i]=0;
    			rep(i,1,t2){
    				int t=i%n;
    				if(!t) t=n;
    				if(b[a[t]]) c[t]++,b[a[t]]=0;
    				else b[a[t]]=1;
    			}
    		}
    		rep(i,1,n) cout<<c[i]<<" ";
    		puts("");
    	}
    	return 0;
    }
    

    D.Rock Paper Scissors

    ll a[3],b[3];
    
    int main(){
        int _=read; 
        while(_--){
            for(int i=0;i<3;i++) cin>>a[i];
            for(int i=0;i<3;i++) cin>>b[i];
           ll ans=0;
            ll d;
            d=min(a[0],b[1]);
            ans+=d, a[0]-=d, b[1]-=d;
            d=min(a[1],b[2]);
            ans+=d, a[1]-=d, b[2]-=d;
            d=min(a[2],b[0]);
            ans+=d, a[2]-=d, b[0]-=d;
            for(int i=0;i<3;i++) d=min(a[i],b[i]), a[i]-=d, b[i]-=d;
            for(int i=0;i<3;i++) ans-=a[i];
            cout<<ans<<endl;
        }
    	return 0;
    }
    
    

    H Nihongo wa Muzukashii D

    int main(){
        int _=read; 
        while(_--){
            string s,res="";cin>>s;
            int n=s.size()-1;
        	if(s=="ikimasu"){
                 res="itte";
                cout<<res<<endl;
               continue;
            }
               
        	if(s.substr(n-6+1,6)=="rimasu"){
        		res=s.substr(0,n-6+1)+"tte";
        	}
        	else if(s.substr(n-7+1,7)=="chimasu"){
        		res=s.substr(0,n-7+1)+"tte";
        	}
        	else if(s.substr(n-6+1,6)=="mimasu"){
        		res=s.substr(0,n-6+1)+"nde";
        	}
        	else if(s.substr(n-6+1,6)=="bimasu"){
        		res=s.substr(0,n-6+1)+"nde";
        	}
        	else if(s.substr(n-6+1,6)=="nimasu"){
        		res=s.substr(0,n-6+1)+"nde";
        	}
        	else if(s.substr(n-6+1,6)=="kimasu"){
        		res=s.substr(0,n-6+1)+"ite";
        	}
        	else if(s.substr(n-6+1,6)=="gimasu"){
        		res=s.substr(0,n-6+1)+"ide";
        	}
        	else if(s.substr(n-7+1,7)=="shimasu"){
        		res=s.substr(0,n-7+1)+"shite";
        	}
        	cout<<res<<endl;
        }
    	return 0;
    }
    
    

    K K-skip Permutation

    int main(){
        int n=read,k=read;
        int idx=0;
        rep(i,1,k){
        	for(int j=0;j*k+i<=n;j++){
        		cout<<j*k+i<<" ";
        	}
        }
    	return 0;
    }
    
    
    

    L Spicy Restaurant

    
    int h[N],e[N],ne[N],idx,n,m,Q,w[N];
    void init(){
        idx=0;
        memset(h,-1,sizeof h);
    }
    void add(int a,int b){
        e[idx]=b,ne[idx]=h[a],h[a]=idx,idx++;
    }
    
    int dis[N][110],st[N];
    
    void bfs(int s){
    	memset(st,0,sizeof st);
    	queue<int>q;
    	rep(i,1,n)
    		if(w[i]==s){
    			q.push(i);st[i]=1;dis[i][s]=0;
    		}
    	while(q.size()){
    		int t=q.front();q.pop();
    		for(int i=h[t];~i;i=ne[i]){
    			int j=e[i];
    			if(st[j]) continue;
    			dis[j][s]=dis[t][s]+1;
    			q.push(j);st[j]=1;
    		}
    	}
    }
    
    int main(){
    	init();
    	n=read,m=read,Q=read;
    	rep(i,1,n) w[i]=read;
    	rep(i,1,m){
    		int u=read,v=read;
    		add(u,v);add(v,u);
    	}
    	memset(dis,-1,sizeof dis);
    	rep(i,1,100) bfs(i);
    	
    	while(Q--){
    		int p=read,a=read;
    		int minn=inf;
    		for(int i=1;i<=a;i++)
    			if(dis[p][i]!=-1)
    				minn=min(minn,dis[p][i]);
    		if(minn==inf) minn=-1;
    		printf("%d
    ",minn);
    	}
    	return 0;
    }
    
    
    
    
    

    M True Story

    
    ll s[maxn],t[maxn],p[maxn];
    
    int main(){
        ll n=read,k=read,x=read,p0=read;
        ll res=0,sum=p0;
        rep(i,1,n) s[i]=read;
        rep(i,1,k){
        	t[i]=read;
        }
        rep(i,1,k){
        	p[i]=read;
        	sum=max(sum,p[i]-t[i]);
        }
        sort(s+1,s+1+n);
       // cout<<sum<<endl;
        per(i,n,1){
        	if(s[i]*sum>=x) res++;
        	else break;
        }
        cout<<res<<endl;
    	return 0;
    }
    
    
  • 相关阅读:
    Insufficient parameters supplied to the command
    helloworld program of Linden Scripting Language
    使用DEV控件开发的小软件,单词查询及单词浏览
    SqlBulkCopy基本使用
    .NET3.0+中使软件发出声音[整理篇]
    Quick Hack for Setting the Row Height of a ListViewItem
    WCF返回JSON及EXT调用WCF
    拖动PictureBox 代码片断
    WCF配置工具及服务调试工具
    为指定的XML文件生成类并反序列化
  • 原文地址:https://www.cnblogs.com/OvOq/p/15024545.html
Copyright © 2020-2023  润新知