_Megalovania_ @ 2021-02-10 19:15:53
本地机下好测试数据没问题,去看了看别人的程序问题发现大多都是gets在Linux系统下的原因,我这里面也没用不知道getline算不算大佬帮忙看看(平常都用cin和cout,scanf那套不懂)
//#include<bits/stdc++.h>
#include<iostream>
using namespace std;
const int h=4e4+10;
int n,cnt=0,cntt[h],k=1;
char a[h],pre='0';
string s;
int main(){
getline(cin,s);
for(int i=0;i<200;i++){
if(s[i]=='\0') break;
a[i]=s[i];
n++;
}
cntt[0]=n;
for(int i=0;i<n*n;i++){
if(i>=n) cin>>a[i];
if(a[i]==pre){
cnt++;
}else{
pre=a[i];
cntt[k++]=cnt;
cnt=1;
}
}
cntt[k++]=cnt;
for(int i=0;i<k;i++){
cout<<cntt[i]<<' ';
}
return 0;
}
by _caiji_ @ 2021-02-10 19:18:27
getline也不行,这题没有空格直接cin吧
by _Megalovania_ @ 2021-02-10 19:21:34
@caijianhong 在Linux系统下是没有可以读取整行的语句么
by ud2_ @ 2021-02-10 19:25:33
@Megalovania
没有可以读取整行的语句么
但是这题直接读整行,不加处理会错。
scanf
那套不懂
在这里做些实验就懂了(
by _Megalovania_ @ 2021-02-10 19:42:33
@sjx233_ 谢谢大佬~