错误:“幻灯片”之前的预期主要表达式



我正在学习C++但现在被困住了。我的程序显示错误

error: expected primary-expression before ‘slide’

我提到了这个,但它没有帮助!

#include <iostream>
#include <string>
#include <limits.h>
using namespace std;
int minSwapsHelper(string slide, int n){
    int noOfGirls;
    for(int i = 0; slide[i]!=''; i++){
        if(slide[i] == 'G'){
            noOfGirls++;
        }
    }
    int tempNoOfGirls = noOfGirls, maxNoOfGirls = INT_MIN;
    int noOfGirlsAtEachItr[n]={0};
    if(slide[0] == 'G'){
        noOfGirlsAtEachItr[0] = 1;
    }
    for(int i = 0; i< n; i++){
        if(slide[i] == 'G'){
            noOfGirlsAtEachItr[i] = noOfGirlsAtEachItr[i-1] + 1;
        }
        else{
            noOfGirlsAtEachItr[i]= noOfGirlsAtEachItr[i-1];
        }
    }
    for(int i = tempNoOfGirls- 1; i < n; i++){
        if(i == (tempNoOfGirls - 1))
            noOfGirls = noOfGirlsAtEachItr[i];
        else
            noOfGirls = noOfGirlsAtEachItr[i] - noOfGirlsAtEachItr[i - tempNoOfGirls];
        if(maxNoOfGirls < noOfGirls){
            maxNoOfGirls = noOfGirls;
        }
    }
    int noOfBoys = tempNoOfGirls - maxNoOfGirls;
    return noOfBoys;
}
int minSwapsToWin(string slide){
    /*int i = 0;
    while(slide[i] != ''){
        i++;
    }
    int lengthOfString = i;*/
    int lengthOfString = slide.length();
    return minSwapsHelper(string slide, lengthOfString);
}
 int main(){
 string slide = "BBGBGBG";
 cout<<minSwapsToWin(slide)<<"n";
 return 0;
 }

我有代码解决方案的问题如下:

问题:

在一所学校里,学生们正在玩游戏。最初 每个人都站在学校草坪上的圆形路径上。这 索引 1 的学生站在索引 N 和之前的学生旁边 索引 2 的学生。所有女孩需要站在一起才能获胜 游戏。女孩们有影响力影响男孩们 交换仓位。帮助女孩们决定最低掉期次数 他们必须这样做,以便他们所有人站在一起。

输入:BBGBGBG 输出:1 解释:我们可以将索引 3 处的 G 交换为 索引 6 处的 B 将所有 B 和 G 放在一起。

输入:BGBGGB 输出:1 解释:我们可以将索引 3 处的 B 与索引 3 处的 G 交换 索引 2 将所有 B 和 G 放在一起。

这里删除string

    return minSwapsHelper(string slide, lengthOfString);

最新更新