s20186的6道题

s201861魔术卡片

#include<bits/stdc++.h>
using namespace std;
int a,b,x,y;
int main()
{   
	cin>>a>>b>>x>>y;    
	if((a>=x&&b>=y)||(a>=y&&b>=x)||(x>=a&&y>=b)||(x>=b&&y>=a))cout<<1;   
	else cout<<2;	
	return 0;
}

 s201862均分计算

#include<bits/stdc++.h>
using namespace std;
int n,t[10009],s[10009],k;
float h;
int main()
{   
	cin>>n;    
	k=n;    
	for(int i=1;i<=n;i++)    
	{    	
		cin>>t[i];		
		h=h+t[i];   
	}   	
    sort(t+1,t+1+n);
	h=h-t[1]-t[n];	
	k=k-2;    
	h=h/k;    
	printf("%.2lf\n",h);
    return 0;
}

s201863出发能量  

 

#include<bits/stdc++.h>
using namespace std;
int n,s,x,ans;
int main()
{	
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>x;
		s=s+x;
		if(s<0)
		{
			ans=ans+(-1*s);
			s=0;
		}
	}
	cout<<ans;
	return 0;
}

 s201864衰减 

#include<bits/stdc++.h>
using namespace std;
int n,m,s[10],t;
void sj(int v)
{
    if(v==1)
    {
        t++;
        cout<<n<<"-";
        for(int i=1;i<m;i++)cout<<s[i]<<"-";
        cout<<s[m]<<"\n";
        return;
    }
    for(int i=1;i<=v>>1;i++)
    {
        m++;
        s[m]=i;
        sj(i);
        m--;
    }
}
int main()
{
    cin>>n;
    sj(n);
    cout<<t;
    return 0;
}

s201865拆除桥墩 

 

#include<bits/stdc++.h>
using namespace std;
long long L,n,m,l,r,x,y,z,c,k,s[100009];
int main()
{
    cin>>L>>n>>m;
    for(int i=1;i<=n;i++)cin>>s[i];
    s[n+1]=L;
	l=0;
	r=L+1;
    for(;;)
    {
        k=(l+r)/2;
        x=0;
		z=0;
		s[0]=0;
        for(int i=1;i<=n+1;i++)
        {
            c=i;
            y=s[c]-s[z];
            if(y>=k)z=i;
            else if(y<k)x++;
        }
        if(x>m)r=k;
        else if(x<=m)l=k;
        if(l+1==r)break;
    }
    cout<<l;
    return 0;
}

 s201866扑克游戏 

 

#include<bits/stdc++.h>
using namespace std;
int f[3002],P[3002],S[3002],q[3002],n,x;
int main()
{   
	cin>>n;    
	for(int i=1;i<=n;i++)cin>>P[i];   
	for(int i=1;i<=n;i++)cin>>S[i];       
	for(int i=1;i<=n;i++)q[i]=q[i-1]+S[i];   
	for(int i=1;i<=n;i++)   
	{      
		f[i]=f[i-1];    
		for(int j=1;j<i;j++)        
		{            
			if(P[i]==P[j])x=q[i]-q[j-1]+f[j-1];     
			if(x>=f[i])f[i]=x;
		}
	}  
	cout<<f[n];  
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值