For this Question: Given a string S. Find number of pairs of substrings which are equal.Input contains a string S containing lowercase english alphabet.

Constraints:
1 <= |S| <= 500Print number of pairs of substrings which are equal.Sample Input
ababa

Sample Ouput
7

Explanation
Pairs are:
([0-0], [2-2])
([0-0], [4-4])
([2-2], [4-4])
([1-1], [3-3])
([0-1], [2-3])
([1-2], [3-4])
([0-2], [2-4]), I have written this Solution Code: #pragma GCC optimize ("O3")
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define VV vector
#define pb push_back
#define bitc  __builtin_popcountll
#define m_p make_pair
#define infi 1e18+1
#define eps 0.000000000001
#define fastio ios_base::sync_with_stdio(false);cin.tie(NULL);
string char_to_str(char c){string tem(1,c);return tem;}
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
template<class T>//usage rand<long long>()
T rand() {
    return uniform_int_distribution<T>()(rng);
}
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
 
typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> oset;
// string to integer stoi()
// string to long long stoll()
// string.substr(position,length);
// integer to string to_string();
 
//////////////
auto clk=clock();
#define all(x) x.begin(),x.end()
#define S second
#define F first
#define sz(x) ((long long)x.size())
#define int long long  
#define f80 __float128
#define pii pair<int,int>
/////////////

signed main()
{
	fastio;
	#ifdef ANIKET_GOYAL
		freopen("inputf.in","r",stdin);
		freopen("outputf.in","w",stdout);
	#endif
	string s;
	cin>>s;
	int n;
	n=s.length();
	map<string,int> m;
	for(int i=0;i<n;++i){
		string x="";
		for(int j=i;j<n;++j){
			x+=s[j];
			m[x]++;
		}
	}
	int ans=0;
	for(auto r:m){
		ans+=(r.S*(r.S-1))/2;
	}
	cout<<ans;
	#ifdef ANIKET_GOYAL
		// cout<<endl<<endl<<endl<<endl<<"Time elapsed: "<<(double)(clock()-clk)/CLOCKS_PER_SEC<<endl;
	#endif
}, In this Programming Language: C++, Now tell me if this Code is compilable or not?