EurekaStriker @ 2021-07-13 20:32:47
我如果程序是这样
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a=0,b=1;
char c[100000],d[1000];
cin>>d;
a=strlen(d);
for(int i=0;i<a;i++)
c[i]=d[i];
for(int i=1;i<a;i++)
{
cin>>d;
for(int j=0;j<a;j++)
c[i*a+j]=d[j];
}
cout<<a<<" ";
for(int i=1;i<a*a;i++)
{
if(c[i]!=c[i-1])
{
cout<<b<<" ";
b=1;
}
else
b++;
}
cout<<b;
}
测试点就第7,8个对
如果这样
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a=0,b=0;//这改了!!!
char c[100000],d[1000];
cin>>d;
a=strlen(d);
for(int i=0;i<a;i++)
c[i]=d[i];
for(int i=1;i<a;i++)
{
cin>>d;
for(int j=0;j<a;j++)
c[i*a+j]=d[j];
}
cout<<a<<" ";
for(int i=0;i<a*a;i++)//这改了!!!
{
if(c[i]!=c[i-1])
{
cout<<b<<" ";
b=1;
}
else
b++;
}
cout<<b;
}
测试点剩下的都全对…… emmm
求大佬指教
by Uzumaki @ 2021-07-13 20:44:15
i = 0
时 i - 1
导致数组越界
by EurekaStriker @ 2021-07-13 20:50:03
这样还是过不了啊
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a=0,b=0;
char c[100000],d[1000];
cin>>d;
a=strlen(d);
for(int i=0;i<a;i++)
c[i]=d[i];
for(int i=1;i<a;i++)
{
cin>>d;
for(int j=0;j<a;j++)
c[i*a+j]=d[j];
}
cout<<a<<" ";
for(int i=0;i<a*a;i++)
{
if(c[i+1]!=c[i])
{
cout<<b<<" ";
b=1;
}
else
b++;
}
cout<<b;
}
emm应该怎么办呢
by kanjiankeji @ 2021-07-13 21:30:34
呵呵
by kanjiankeji @ 2021-07-14 08:25:29
了就会立刻