Whats wrong in this program?

program is workinh well on other compiler why its not printing any output

#include
#include
using namespace std;
string pie(string str){
if(str.length()<=1)
return str;
while(str.at(0)==‘p’ && str.at(1)==‘i’){
str.erase(str.begin());
str.erase(str.begin());
str.insert(0,“3.14”);
}
return str.at(0) + pie(str.substr(1));
}
int main() {
int t;
cin>>t;
while(t–){
string s;
cin>>s;
cout<<pie(s);
}
return 0;
}

@ashish25patidar
The code seems to be working fine. Kindly paste the code from original source into the CB IDE (cb.lk/ide ) and try to run some testcases. If it is failing for some particular testcases , share those testcases here so I can help you out.
The code seemed to work fine in my compiler , except for the missing new line statement after every testcase output.