没用gets,还是全WA,求助~

P1320 压缩技术(续集版)

_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_ 谢谢大佬~


|