My issue
Why it is giving Run time error-
void solve(){
int n;
cin >> n;
string s;
cin>>s;
unordered_setst;
for(int i=0;i<=n-3;i++){
string t=s;
char c=t[i];
t.erase(i,1);
t.insert(i+2,1,c);
st.insert(t);
}
// for(auto it:st) cout<<it<<endl;
cout<<st.size()<<endl;
}
My code
#include<bits/stdc++.h>
#include <iostream>
using namespace std;
using ll = long long;
#define yes std::cout << "YES" << std::endl
#define no std::cout << "NO" << std::endl
#define for_n(n) for (int i = 0; i < n; ++i)
#define v(n) \
std::vector<int> v(n); \
for (int i = 0; i < n; ++i) { \
std::cin >> v[i]; \
}
void solve(){
int n;
cin >> n;
string s;
cin>>s;
unordered_set<string>st;
for(int i=0;i<=n-3;i++){
string t=s;
char c=t[i];
t.erase(i,1);
t.insert(i+2,1,c);
st.insert(t);
}
// for(auto it:st) cout<<it<<endl;
cout<<st.size()<<endl;
}
int main() {
int t;
cin >> t;
while(t--){
solve();
}
return 0;
}
Problem Link: Triangular Swaps Practice Coding Problem - CodeChef