Advertisement
Guest User

Untitled

a guest
Feb 25th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.10 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define re return
  3. #define pb push_back
  4. #define po pop_back
  5. #define all(x) (x).begin(), (x).end()
  6. #define fi first
  7. #define se second
  8. #define ss second.second
  9. #define sf second.first
  10. #define ff first.first
  11. #define fs first.second
  12. #define si size
  13. #define sqrt(x) sqrt(abs(x))
  14. #define mp make_pair
  15. #define pi 3.14159265359
  16. #define er erase
  17. #define in insert
  18. #define em empty
  19. #define ft front
  20. #define fo(i,n) for(i = 0; i < n; i++)
  21. #define ro(i,n) for(i = n - 1; i >= 0; i--)
  22. #define fr(i,j,n) for(i = j; i < n; i++)
  23. #define rf(i,j,n) for(i=n-1;i>=j;i--)
  24. typedef std::vector<int> vi;
  25. typedef std::vector<vi> vvi;
  26. typedef std::pair<int,int> ii;
  27. typedef std::vector<ii> vii;
  28. typedef std::vector<std::string> vs;
  29. typedef double dl;
  30. typedef long double ld;
  31. typedef long long ll;
  32. typedef std::pair<ll, ll> pll;
  33. typedef std::vector<ll> vll;
  34. #define filename ""
  35. using namespace std;
  36. char c[(int)1e5*3+10];
  37. set<string> s;
  38. int main()
  39. {
  40. int i;
  41. string t="";
  42. int o=0,j;
  43. set<string>::iterator q;
  44. while(gets(c))
  45. {
  46. for(i=0;c[i]!='\0';)
  47. {
  48. while(c[i]>='a'&&c[i]<='z')
  49. {
  50. t+=c[i];
  51. i++;
  52. }
  53. fo(j,t.length())
  54. {
  55. q=s.lower_bound(t.substr(0,j+1));
  56. if (q==s.end()) break;
  57. if (q->substr(0,j+1)!=t.substr(0,j+1)) break;
  58. if (q->length()<=t.length())
  59. {
  60. if (*q==t.substr(0,q->length()))
  61. {
  62. q++;
  63. if (q==s.end()||q->substr(0,j+1)!=t.substr(0,j+1))
  64. {
  65. cout<<t<<' '<<*q<<'\n';
  66. o-=t.length()-j;
  67. break;
  68. }
  69. }
  70. }
  71. }
  72. s.in(t);
  73. t="";
  74. while(c[i]!='\0'&&(c[i]<'a'||c[i]>'z'))
  75. {
  76. i++;
  77. }
  78. }
  79. o+=i+1;
  80. }
  81. cout<<o;
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement