社区讨论

求助

学术版参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@lypoz0yr
此快照首次捕获于
2024/07/17 18:20
2 年前
此快照最后确认于
2024/07/17 19:28
2 年前
查看原帖
有代码地方不懂的,求大佬教!
题目网址: https://download.csdn.net/download/Richardlrx2010/89550327
代码:```cpp #include<bits/stdc++.h> using namespace std; long long a,b,c,d; long long sum,sum1,sum2,sum3,sum4;
int main(){ freopen("cheese.in","r",stdin); freopen("cheese.out","w",stdout); cin>>a>>b>>c>>d; if(a<d){ sum+=a; sum4=d-a; } else{ sum+=d; sum1=a-d; } if(c<b){ sum+=c; sum2=b-c; } else{ sum+=b; sum3=c-b; } for(int i=0;i<10;i++) { if(sum1>=2&&sum3!=0){ sum++; sum1--; sum2=sum2-2; } if(sum1>=4){ sum++; sum1=sum1-4;
CPP
}
if(sum2>=2&&sum1!=0)
{
	sum++;
	sum1--;
	sum2=sum2-2;
}

}



cout<<sum;

return 0;}
CPP
(cheese)



2.#include<bits/stdc++.h>
using namespace std;
int sum,num,sum1;
int n,k;
int a[100000];
int b[110000];
int c[1000000];

int main(){
		freopen("line.in","r",stdin);
	freopen("line.out","w",stdout);
	cin>>n>>k;
	for(int i=0;i<n;i++){
		cin>>a[i]>>b[i];
	}
	
	
//	for(int i=1;i<=n;i++)
//	{
//		c[i]=b[i]-b[i++];
//		if(c[i]<0)
//		{
//			c[i]=c[i]*-1;
//		}
//	}
	for(int i=0;i<k;i++)
	for(int i=0;i<n;i++){
		if(b[i]>sum){
			sum=b[i];
			num=i;
		
		}
	}
	for(int i=num;i<n;i++){
		b[i]=b[i+1];
	}
	
		
	for(int i=0;i<n-k-1;i++)
	{
		c[i]=b[i]-b[i+1];
		if(c[i]<0)
		{
			c[i]=c[i]*(-1);
		}
	}
	for(int i=0;i<n-k;i++){
		 sum1=c[i]+sum1;
	}
	cout<<sum1;
	
	return 0;
}

(line)


3.#include<bits/stdc++.h>
using namespace std;
int n,m;
long long a[10000];
long long b[100000];
long long c[100000];
long long num,sum;
long long max1; 
int f(int j,int k,int i){
		num=c[j];
		for(k=1;k<=max1;k++){
			for(i=1;i<=k;i++){
				num=num+min(i,k-i+1);
			}
			if(num>max1){
				return k-1;
			}
			else if(num==max1){
				return k;
			}
			else{
				num=c[j];
			}
		}
	
}
int main(){
	freopen("road.in","r",stdin);
	freopen("road.out","w",stdout);
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	for(int i=1;i<=n;i++){
		cin>>b[i];
	}
	cin>>m;
	for(int i=1;i<=m;i++){
		cin>>c[i];
	}
	//输入
	num=c[1];
	for(int i=1;i<=n;i++){
		if(a[i]>max1){
			max1=a[i];
		}
	}
	for(int i=1;i<=m;i++){
		cout<<f(i,0,0)<<" ";
	}
	
	
	
	
	return 0;
}

(road)

回复

0 条回复,欢迎继续交流。

正在加载回复...