有代码地方不懂的,求大佬教!
题目网址: 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;
}
if(sum2>=2&&sum1!=0)
{
sum++;
sum1--;
sum2=sum2-2;
}
}
cout<<sum;
return 0;}
(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)