C++ 错误:我的c+;中的大小与上一个大小损坏+;程序

C++ 错误:我的c+;中的大小与上一个大小损坏+;程序,c++,C++,当我在ideone.com上运行代码时,我没有收到任何错误,但当我试图在hackerrank上运行代码时(这是过去的竞赛问题之一),我收到了编译器消息:Abort Called和上面的错误。我无法理解错误是什么。有人能帮我找出错误是什么以及如何解决它吗 对不起,我不确定我的逻辑是否正确 我的代码链接: #包括 使用名称空间std; 字符串s; 向量v={0}; int main(){ int t; cin>>t; 而(t--) { int n; cin>>n; 而(n--) { cin>>s;

当我在ideone.com上运行代码时,我没有收到任何错误,但当我试图在hackerrank上运行代码时(这是过去的竞赛问题之一),我收到了编译器消息:Abort Called和上面的错误。我无法理解错误是什么。有人能帮我找出错误是什么以及如何解决它吗

对不起,我不确定我的逻辑是否正确

我的代码链接:

#包括
使用名称空间std;
字符串s;
向量v={0};
int main(){
int t;
cin>>t;
而(t--)
{
int n;
cin>>n;
而(n--)
{
cin>>s;
//b e i n g z r o
//0 1 2 3 4 5 6 7

对于(int i=0;i
v.size()
为1,访问
v[1]
,…,
v[7]
会导致未定义的行为。注意:常规缩进可能会导致很多错误不可能,或者至少非常明显。注意:查看
开关
如果
则因为如果
如果(s[i]='b'| s[i]='b'))
为真,执行后续测试没有意义。
#include <bits/stdc++.h>
using namespace std;
    string s;
        vector<int> v={0};
int main() {
    int t;
    cin >>t;
    while(t--)
    {
    int n;
    cin >>n;
    while(n--)
    {
    
        cin >>s;
    
        //b e i n g z r o
        //0 1 2 3 4 5 6 7
        for(int i=0;i<s.size();i++)
        {
            if(s[i]=='b' || s[i]=='B')
                v[0]++;
            if(s[i]=='e' || s[i]=='E')
                v[1]++;
            if(s[i]=='i' || s[i]=='I')
                v[2]++;
            if(s[i]=='n' || s[i]=='N')
                v[3]++;
            if(s[i]=='g' || s[i]=='G')
                v[4]++;
            if(s[i]=='z' || s[i]=='Z')
                v[5]++;
            if(s[i]=='r' || s[i]=='R')
                v[6]++;
            if(s[i]=='o' || s[i]=='O')
                v[7]++;
            
        }
        
        
    }
    int num=*min_element(v.begin(),v.end());
        if(v[1]==num+1)
        {
            cout << num<<'\n';
        }
        else
        {
            cout << 0 <<"\n";
        }
    
    
    }       
 return 0;
}