大神求解

qym 山顶洞人 2025-08-23 18:42:21 7
#include<iostream>
using namespace std;
int a[1001];
int n;
int pin,ni,nd;
int sum=0;
int maxx=0,maxi,minn=1001,mini;
int cnt=0,cnta[1001];
int main(){
	scanf("%d",&n);
	for(int i=0;i<n;i++){
		scanf("%d",&a[i]);
		sum+=a[i];
		if(maxx<a[i])
			{maxx=a[i];maxi=i+1;}
		if(minn>=a[i])
			{minn=a[i];mini=i+1;}
		if(a[i]>10&&a[i]<100)
			{cnt++;cnta[cnt]=a[i];}
	}
	scanf("%d %d",&pin,&ni);
	scanf("%d",&nd);
	printf("%d\n",sum);
	for(int i=n-1;i>=0;i--)
		printf("%d ",a[i]);
	printf("\n%d %d\n",maxx,maxi);
	printf("%d %d\n",minn,mini);
	printf("%d ",cnt);
	for(int i=1;i<=cnt;i++){
		printf("%d ",cnta[i]);
	}
	printf("\n");
	for(int i=0;i<n;i++){
		if(i==pin-1)
			printf("%d ",ni);
		printf("%d ",a[i]);
	}
	printf("\n");
	for(int i=0;i<n;i++){
		if(i==nd-1)
			continue;
		else if(i==pin-1){
			printf("%d ",ni);
			printf("%d ",a[i]);
		}else
			printf("%d ",a[i]);
	}
	return 0;
}
{{ vote && vote.total.up }}

共 3 条回复

qym 山顶洞人

懂了 谢谢q(≧▽≦q)

root 站长
for (int i = 0; i < n; i++) {
        if (i == nd - 1)
            continue;
        else if (i == pin - 1) {
            printf("%d ", ni);
            printf("%d ", a[i]);
        } else
            printf("%d ", a[i]);
    }

这里错了,前面插入元素会影响删除元素的位置,

qym 山顶洞人