求助,本地能过,测评0分,主要是这题用string存储能改不?

P1320 压缩技术(续集版)

bobo_code @ 2020-08-14 23:39:18

#include<iostream>
using namespace std;
int n,cnt=0;
char pd='0';//判断是否为0或1 
int main()
{
    string str;
    getline(cin,str);
    n=str.length();//n:矩阵边长 
    struct hang{
        string st;
    }a[n];//结构体存储矩阵 
    a[0].st=str;

    for(int i=1;i<n;i++)
    {
        getline(cin,a[i].st); 
    }//输入矩阵 

    cout<<n<<' ';
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
        {
            if(a[i].st[j]==pd)
            {
                cnt++;
            }
            else 
            {
                cout<<cnt<<' ';
                cnt=1;
                if(pd=='0') pd='1';
                else pd='0';
            }               
        }
    }
    cout<<cnt;
    return 0;
}

第一组数据 11111 00100 11111 00100 11111

5 0 5 2 1 2 5 2 1 2 5


by bobo_code @ 2020-08-14 23:42:44

这里用的是string存储每行,getline函数输入的,请问能在不改变string的情况下解决这个问题不,(好像是换行符的问题)


by mushroom_knight @ 2020-08-15 00:00:03

用cin输入,cin不读空格和换行符


by mushroom_knight @ 2020-08-15 00:00:09

@bobo_code


by bobo_code @ 2020-08-15 00:30:06

okok问题已解决,代码已AC,感谢感谢,看来还要多加熟悉输入QAQ @Ace_Translator


by justinjia @ 2020-11-21 12:40:07

@bobo_code 结构体能放主函数里面??????


|