Advertisement
Guest User

Untitled

a guest
Nov 18th, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.40 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. typedef long long ll;
  4. #define all(a) (a).begin(), (a).end()
  5. #pragma GCC optimize("O3")
  6. #pragma GCC optimize("Ofast")
  7. #pragma optimization_level 3
  8. #pragma GCC optimize("Ofast,no-stack-protector,unroll-loops,fast-math,O3")
  9. #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
  10. #define forn(i,a,b) for (int i = a; i <= b; i++)
  11. #define ff first
  12. #define ss second
  13. #define pb push_back
  14. #define mp make_pair
  15. #define rc(s) return cout<<s,0
  16. #define rcc(s) cout<<s,exit(0)
  17. #define er erase
  18. #define in insert
  19. #define pi pair <int, int>
  20. #define pii pair <pi, pi>
  21. # define sz(x) (int)((x).size())
  22. #define inf 1000000000
  23. #define cin in
  24. #define cout out
  25. const ll mod = 1000000007;
  26. string a[30];
  27. int n;
  28. set<int>st;
  29. multiset<int>mlt;
  30. ifstream in("agent.in");
  31. ofstream out("agent.out");
  32. string trans(string s){
  33. string ans="";
  34.  
  35. forn(i,0,sz(s)-1){
  36. st.in((s[i]-'0'));
  37. mlt.in((s[i]-'0'));
  38.  
  39. if(sz(st)==2){
  40. ans+=to_string(sz(mlt)-1);
  41. ans+=s[i-1];
  42. st.clear(); mlt.clear();
  43. st.in(s[i]-'0'); mlt.in(s[i]-'0');
  44. }
  45. if(i==(sz(s)-1)){
  46. ans+=to_string(sz(mlt));
  47. ans+=s[i];
  48. }
  49. }
  50. st.clear(); mlt.clear();
  51. //cout<<ans;
  52. return ans;
  53. }
  54.  
  55. int32_t main(){
  56. ios_base::sync_with_stdio(0); cin.tie(); cerr.tie(); cout.tie();
  57. cin>>n;
  58. a[1]="1";
  59. forn(i,2,n+1){
  60. a[i]=trans(a[i-1]);
  61. }
  62. cout<<a[n];
  63. return 0;
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement