渡荆门送别c++洛谷
```c++
#include
#include
#include
#include
using namespace std;
long long a[500000],n,i,m2=-1,m1=1000000000000000000;
int main()
{
cin>>n;
for( i=1;i<=n;i++)
{
cin>>a[i];
}
for( i=1;i<=n;i++)
{
if(m2if(m1>a[i])
{
m1=a[i];
}
}
for(i=1;i<=n;i++)
{
cout<' ';
}
cout<for(i=1;i<=n;i++)
{
cout<' ';
}
return 0;
}
```
你是不是没仔细看数据呀,你的a数组是5*10的5次方,题目要求10的六次方,开到1000005就好了。
AC代码如下:
#include<iostream>
#include<cstdio>
#include<cmath>
#include<string>
using namespace std;
long long a[1000005],n,i,m2=-1,m1=10000000000000000000;//500000改成1000005
int main()
{
cin>>n;
for( i=1;i<=n;i++)
{
cin>>a[i];
}
for( i=1;i<=n;i++)
{
if(m2<a[i])
{
m2=a[i];
}
if(m1>a[i])
{
m1=a[i];
}
}
for(i=1;i<=n;i++)
{
cout<<m2-a[i]<<' ';
}
cout<<endl;
for(i=1;i<=n;i++)
{
cout<<a[i]-m1<<' ';
}
return 0;
}
如有帮助,望采纳,感激不尽!
不知道你这个问题是否已经解决, 如果还没有解决的话:题目描述
输入数字N,然后输入N个数,计算这N个数的和。
输入描述:
第一行输入一个整数N(0≤N≤50),第二行输入用空格分隔的N个整数。
输出描述:
输出为一行,为第二行输入的“N个整数之和”的计算结果。
示例1
输入
5
1 2 3 4 5
输出
15
#include<stdio.h>
int main()
{
int N,tmp,ans=0;
scanf("%d",&N);
for(int i=0;i<N;i++)
{
scanf("%d",&tmp);
ans+=tmp;
}
printf("%d",ans);
return 0;
}
#include<bits/stdc++.h>
using namespace std;
int a[45];
int main()
{
int n, s = 0;
cin >> n;
for(int i = 1; i <= n; i++)
{
cin >> a[i];
}
for(int i = 1; i <= n; i++)
{
s += a[i];
}
cout << s << endl;
return 0;
}