fork download
  1. #include <iostream>
  2. #include <iomanip>
  3. using namespace std;
  4.  
  5.  
  6. int main()
  7. {
  8. int n,a=1,r,l=0,b[1],m=0,c[1],h=0,g,v[2],x,q,w=0,z=0,j;
  9. long double d=2,y=10,u[26],f[26],k,s=2,t=2;
  10. c[0]=5;
  11. c[1]=6;
  12. cin>>n;
  13. if(n<3)
  14. {
  15. if(n==1)
  16. k=c[0];
  17. if(n==2)
  18. k=c[1];
  19. }
  20. else
  21. {
  22. x=n;
  23. q=n;
  24. r=n;
  25. while(z==0)
  26. {
  27. for(int i=0;i<2;i++)
  28. {
  29.  
  30. if(h==0)
  31. b[0]=3;
  32. else
  33. b[0]=b[1];
  34.  
  35. b[1]=b[0]+d;
  36.  
  37. if((x>=b[0])&&(x<b[1]))
  38. {
  39. c[0]=5;
  40. c[1]=6;
  41. if(i==0)
  42. {
  43. u[w]=y;
  44. f[w]=c[0];
  45. x-=d;
  46. }
  47. if(i==1)
  48. {
  49. u[w]=y;
  50. f[w]=c[1];
  51. x-=(d*2);
  52. }
  53. l++;
  54. }
  55. h++;
  56. if((i==1)&&(l==1))
  57. {
  58. w=-1;
  59. h=0;
  60. d=1;
  61. l=0;
  62. y=1;
  63. }
  64. }
  65. y*=10;
  66. d*=2;
  67. t*=2;
  68. if(m==0)
  69. {
  70. v[0]=3;
  71. v[1]=v[0]+s;
  72. }
  73. if(m==1)
  74. {
  75. v[0]=v[1];
  76. v[1]=(v[0]+s)+2;
  77. }
  78. if(m>1)
  79. {
  80. v[0]=v[1];
  81. v[1]=(v[0]+(s/2))+s;
  82. }
  83. if((q>=v[0])&&(q<v[1]))
  84. {
  85. c[0]=5;
  86. c[1]=6;
  87. a++;
  88. q-=s;
  89. if(q==1)
  90. {
  91. k=c[0];
  92. z=1;
  93. }
  94. if(q==2)
  95. {
  96. k=c[1];
  97. z=1;
  98. }
  99. m=(-1);
  100. s=1;
  101. }
  102. s*=2;
  103. g++;
  104. m++;
  105. w++;
  106. }
  107. for(int i=0; i<(a-1) ;i++)
  108. {
  109. k=(f[i]*u[i])+k;
  110. }
  111. }
  112. cout<<setprecision(100);
  113. cout<<k<<endl;
  114.  
  115. return 0;
  116. }
Runtime error #stdin #stdout #stderr 0s 4280KB
stdin
987654321
stdout
565665666655665655562371072
stderr
*** stack smashing detected ***: <unknown> terminated