小小困惑
查看原帖
小小困惑
214554
Omega_W楼主2022/2/6 20:32

本地测试能直接过,但OJ要加上注释那行,为啥呢?

#include <stdio.h>

int main(){
	int n=0,a[40001];
	char c='0';
	while(1){
		scanf("%c",&c);
		if(c=='\n'){
			break;
		}
		else{
			a[n]=(int)c-48;
			n++;
		}
	}
	// n--;
	/*	↑就是这行	*/
	
	for(int i=0;i<n-1;i++){
		for(int j=0;j<n;j++){
			scanf("%c",&c);
			a[n*(i+1)+j]=(int)c-48;
		}
		if(i<n-2){
			scanf("\n");
		}
	}
	printf("%d ",n);
	int x=0,num=0;
	for(int i=0;i<n*n;i++){
		int numx=a[i];
		if(numx==num){
			x++;
		}
		else{
			printf("%d ",x);
			num=numx;
			x=1;
		}
	}
	printf("%d",x);
	
	return 0;
}

2022/2/6 20:32
加载中...