记录编号 372666 评测结果 AAAAAAAAAA
题目名称 中考分数 最终得分 100
用户昵称 GravatarHeHe 是否通过 通过
代码语言 C++ 运行时间 0.003 s
提交时间 2017-02-18 20:42:58 内存使用 0.32 MiB
显示代码纯文本
  1. #include<iostream>
  2. #include<cstdio>
  3. using namespace std;
  4. //#define LOCAL
  5. #define MAXN 1001
  6. struct sc{
  7. int n;
  8. int s;
  9. sc()
  10. {
  11. n=s=0;
  12. }
  13. void read(const int&a)
  14. {
  15. n=a;
  16. scanf("%d",&s);
  17. return ;
  18. }
  19. bool operator<(const sc&a)const
  20. {
  21. if(s<a.s)return 0;
  22. if(s>a.s)return 1;
  23. if(n<a.n)return 1;
  24. return 0;
  25. }
  26. }k[MAXN];
  27. void qsort(int l,int r)
  28. {
  29. int i(l),j(r),p((l+r)>>1);
  30. sc mid(k[p]);
  31. do{
  32. while(k[i]<mid)i++;
  33. while(mid<k[j])j--;
  34. if(i<=j)
  35. {
  36. sc tmp(k[i]);
  37. k[i]=k[j];
  38. k[j]=tmp;
  39. i++;j--;
  40. }
  41. }while(i<=j);
  42. if(l<j)qsort(l,j);
  43. if(i<r)qsort(i,r);
  44. return ;
  45. }
  46. int n,m,p,a;
  47. int ans(1);
  48. int main()
  49. {
  50. #ifndef LOCAL
  51. freopen("mark.in","r",stdin);
  52. freopen("mark.out","w",stdout);
  53. #endif
  54. scanf("%d%d",&n,&m);
  55. p=n/m;
  56. for(int i(0);i<n;++i)
  57. k[i].read(i);
  58. scanf("%d",&a);
  59. qsort(0,n-1);
  60. for(int i(0);i<n;++i)
  61. if(k[i].n==a-1)
  62. {
  63. a=i+1;break;
  64. }
  65. while(a>p)
  66. {
  67. a-=p;
  68. ++ans;
  69. }
  70. cout<<ans;
  71. }