文章

49

粉丝

140

获赞

27

访问

16.0k

头像
数组排序 题解:求大佬帮忙看看,一直过不去,不知道怎么错了
P1798 华南理工大学/西北工业大学2019机试
发布于2024年3月18日 19:23
阅读数 228

#include<iostream>
#include <algorithm>
#include <string.h>
using namespace std;
int main(){
	int n,flag=0,c=0;
	char a[10005];
	int b[10005];
	for(int i=0;i<1005;i++)
		b[i]=0;
	gets(a);
	int len=strlen(a);
	for(int i=0;i<len;i++){
		
	 if(a[i]==','){
		if(flag==1)
		b[c]=b[c]*(-1);
		c++;
		flag=0;
		continue;}
	else if(a[i]=='-'){
		flag=1;
	}
	else if(a[i]>='0'&&a[i]<='9'){
		b[c]=b[c]*10+a[i]-'0';}
    else if(a[i] == '\0')
			break;
	
	}
	//cout <<c <<endl;
	sort(b,b+c);
	for(int i=0;i<=c;i++){
		
if((i+1)%4==0)
	cout << b[i]<< endl;
else
		cout << b[i] <<' ';
	}
	//system("pause");
	return 0;
}

 

登录查看完整内容


登录后发布评论

2 条评论
snake
2024年3月18日 21:01

sort(b,b+c+1);

另外尾数为负的处理有问题

赞(0)

孙某人 : 回复 snake: 好的谢谢

2024年3月19日 17:28