Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- ifstream fin("cod.in");
- ofstream fout("cod.out");
- char s[255], s1[255];
- int ls, nr;
- void reverses(char *begin, char *end)
- {
- char temp;
- while (begin < end)
- {
- temp = *begin;
- *begin++ = *end;
- *end-- = temp;
- }
- }
- void reverseWords(char *s)
- {
- char *word_begin = NULL;
- char *temp = s;
- while( *temp )
- {
- if (( word_begin == NULL ) && (*temp != ' ') && (*temp !='.'))
- {
- word_begin=temp;
- }
- if(word_begin && ((*(temp+1) == ' ') || (*(temp+1) == '\0') || (*(temp+1) == '.')))
- {
- reverses(word_begin, temp);
- word_begin = NULL;
- }
- temp++;
- }
- reverses(s, temp-1);
- }
- int main()
- {
- int i, j;
- while(fin.getline(s,255))
- {
- ls=strlen(s);
- for(i=0;i<ls;i++)
- s1[i]=s[ls-i-1];
- s1[ls]='\0';
- strcpy(s,"\0");
- i=0;j=0;
- while(i<ls)
- if(s1[i]=='3' && s1[i+1]=='2')
- {
- s[j]=' ';
- i+=2;
- j++;
- }
- else if(s1[i]=='4' && s1[i+1]=='6')
- {
- s[j]='.';
- i+=2;
- j++;
- }
- else if(s1[i]=='6' || s1[i]=='7' || s1[i]=='8' || s1[i]=='9')
- {
- nr=(int)(s1[i]-'0')*10+s1[i+1]-'0';
- s[j]=(char)(nr);
- i+=2;
- j++;
- }
- else if(s1[i]=='1')
- {
- nr=(int)(s1[i]-'0')*100+(s1[i+1]-'0')*10+s1[i+2]-'0';
- s[j]=(char)(nr);
- i+=3;
- j++;
- }
- s[j]='\0';
- reverseWords(s);
- fout<<s<<endl;
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment