#include <iostream> #include<string.h> using namespace std; void funkcja(char *s,int rozmiar){ int samogloski=0; int wspolgloski=0; long roznica=0; long long rozwiazanie=0; long lewa=0; bool pierwsze=false; while(*s!='\0'){ roznica++; if(*s=='a'||*s=='e'||*s=='i'||*s=='o'||*s=='u'||*s=='y'){ samogloski++; wspolgloski=0; } else { samogloski=0; wspolgloski++; } if((wspolgloski==3||samogloski==3) && pierwsze==true){ rozwiazanie=rozwiazanie+((roznica-3)*((rozmiar-3)-(lewa-2)))+(roznica-3)+((rozmiar-3)-(lewa-2))+1; roznica=2; } else if(wspolgloski>3||samogloski>3){ rozwiazanie=rozwiazanie+1+(rozmiar-(lewa+1)); roznica=2; } else if((wspolgloski==3||samogloski==3) && pierwsze==false){ rozwiazanie=rozwiazanie+((lewa-2)*((rozmiar-3)-(lewa-2)))+(lewa-2)+((rozmiar-3)-(lewa-2))+1; roznica=2; pierwsze=true; } s++; lewa++; } cout<<rozwiazanie<<endl; } int main(){ string str; cin>>str; char nazwa [str.length()]; strcpy(nazwa, str.c_str()); char *wsk=nazwa; funkcja(wsk,str.length()); }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | #include <iostream> #include<string.h> using namespace std; void funkcja(char *s,int rozmiar){ int samogloski=0; int wspolgloski=0; long roznica=0; long long rozwiazanie=0; long lewa=0; bool pierwsze=false; while(*s!='\0'){ roznica++; if(*s=='a'||*s=='e'||*s=='i'||*s=='o'||*s=='u'||*s=='y'){ samogloski++; wspolgloski=0; } else { samogloski=0; wspolgloski++; } if((wspolgloski==3||samogloski==3) && pierwsze==true){ rozwiazanie=rozwiazanie+((roznica-3)*((rozmiar-3)-(lewa-2)))+(roznica-3)+((rozmiar-3)-(lewa-2))+1; roznica=2; } else if(wspolgloski>3||samogloski>3){ rozwiazanie=rozwiazanie+1+(rozmiar-(lewa+1)); roznica=2; } else if((wspolgloski==3||samogloski==3) && pierwsze==false){ rozwiazanie=rozwiazanie+((lewa-2)*((rozmiar-3)-(lewa-2)))+(lewa-2)+((rozmiar-3)-(lewa-2))+1; roznica=2; pierwsze=true; } s++; lewa++; } cout<<rozwiazanie<<endl; } int main(){ string str; cin>>str; char nazwa [str.length()]; strcpy(nazwa, str.c_str()); char *wsk=nazwa; funkcja(wsk,str.length()); } |