Maruf_Hasan

false ordering solution

Oct 20th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.39 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<math.h>
  3. //#include<string.h>
  4. //#include<stdlib.h>
  5. //#include<ctype.h>
  6. //#include<time.h>
  7. //#include<bits/stdc++.h>
  8. //using namespace std;
  9. int divsno(int nmbr)
  10. {
  11. int j=0,i;
  12. for(i=1;i<=(int)sqrt((double)nmbr);i++)
  13. {
  14. if(!(nmbr%i))
  15. j++;
  16. }
  17. if((i-1)*(i-1)==nmbr)
  18. return 2*j-1;
  19. return 2*j;
  20. }
  21. int main()
  22. {
  23. int i,j,temp;
  24. int series[1003];
  25. /* for(i=0;i<1000;i++)
  26. series[i]=i+1;
  27. //printf("%d",divsno(983));
  28. for(i=0;i<1000;i++)
  29. {
  30. for(j=i+1;j<1000;j++)
  31. {
  32. if((divsno(series[j])<divsno(series[i]))||((divsno(series[j])==divsno(series[i]))&&(series[i]<series[j])))
  33. {
  34. temp=series[i];
  35. series[i]=series[j];
  36. series[j]=temp;
  37. }
  38. }
  39. }
  40. printf("%d",series[999]); */
  41. /* int i=0;
  42. for(int k=1;k<=32;k++)
  43. {
  44. for(int j=1000;j>=1&&i<1000;j--)
  45. {
  46. if(divsno(j)==k)
  47. {
  48. series[i]=j;
  49. i++;
  50. }
  51. }
  52. }
  53. printf("%d",series[999]);*/
  54. int tmp[1003],sr=0;
  55. for(i=1;i<=1000;i++)
  56. tmp[i]=divsno(i);
  57. for(i=1;i<=32;i++)
  58. {
  59. for(int j=1000;j>=1&&sr<=1000;j--)
  60. if(tmp[j]==i)
  61. series[sr++]=j;
  62. }
  63. int csno;
  64. scanf("%d",&csno);
  65. for(i=1;i<=csno;i++)
  66. {
  67. scanf("%d",&j);
  68. printf("Case %d: %d\n",i,series[j-1]);
  69. }
  70. return 0;
  71. }
Add Comment
Please, Sign In to add comment