$Luogu$

$Sol$

暴力十分显然叭.正解不是很好想.

我最开始想维护所有色调的客栈的前缀和后缀,然后每扫到一个最低消费合法的就统计一次答案.但是这样会重复计数,两个合法客栈之间有几个消费合法的客栈它们就会被算几次.既然喝咖啡的客栈不能作为计数的基准点,那就换一个叭.换成前一个住宿的客栈或后一个都可以,下面写的是以后一个客栈为基准点的做法:

从$1$扫到$N$,记录$sum[i]$为扫过的色调为$i$的客栈有多少个.$hf[i]$扫过的色调为$i$的和现在这个客栈之间有最低消费不大于$p$的客栈的客栈数.维护$so\ easy.$

$Code$

  1. #include<iostream>
  2. #include<cstdio>
  3. #include<cstring>
  4. #include<queue>
  5. #include<algorithm>
  6. #define il inline
  7. #define Rg register
  8. #define go(i,a,b) for(Rg int i=a;i<=b;++i)
  9. #define yes(i,a,b) for(Rg int i=a;i>=b;--i)
  10. #define mem(a,b) memset(a,b,sizeof(a))
  11. #define ll long long
  12. #define db double
  13. #define inf 2147483647
  14. using namespace std;
  15. il int read()
  16. {
  17. Rg int x=0,y=1;char c=getchar();
  18. while(c<'0'||c>'9'){if(c=='-')y=-1;c=getchar();}
  19. while(c>='0'&&c<='9'){x=(x<<1)+(x<<3)+c-'0';c=getchar();}
  20. return x*y;
  21. }
  22. const int N=60;
  23. int n,k,p,s[N],hf[N];
  24. ll as;
  25. int main()
  26. {
  27. n=read(),k=read(),p=read();
  28. go(i,1,n)
  29. {
  30. Rg int col=read(),cos=read();
  31. if(cos<=p)
  32. go(j,0,k)hf[j]=s[j];
  33. as+=hf[col];
  34. s[col]++;
  35. if(cos<=p)hf[col]++;
  36. }
  37. printf("%lld\n",as);
  38. return 0;
  39. }

随机推荐

  1. BUAA 169 电话费

    http://oj55.bianchengla.com/problem/169/ 还有这个,不怎么好做,最后用栈做出来了. 感觉比较有用的一个数据是: 10 3 1010101010 代码如下: #i ...

  2. @hdu - 6428@ Problem C. Calculate

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 给定 A, B, C,求: \[\sum_{i=1}^{A}\s ...

  3. 「BZOJ1005」[HNOI2008] 明明的烦恼

    「BZOJ1005」[HNOI2008] 明明的烦恼 先放几个prufer序列的结论: Prufer序列是一种对有标号无根树的编码,长度为节点数-2. 具体存在无根树转化为prufer序列和prufe ...

  4. ORACLE| ORACLE基础语法汇总

    创 ORACLE| ORACLE基础语法汇总 2018-07-18 16:47:34 YvesHe 阅读数 9141更多 分类专栏: [数据库]   版权声明:本文为博主原创文章,遵循CC 4.0 B ...

  5. SuperSocket命令程序集定义

    是的,SuperSocket是用反射来查找哪些公开的类实现了基本的命令接口,但是它只在你的AppServer类定义的程序集中查找. 举例来说, 你的 AppServer 定义在程序集 GameServ ...

  6. SuperSocket 日志接口

    SuperSocket的日志功能非常简单,你几乎可以在任何地方都能记录日志. AppServer 和 AppSession 都有Logger属性, 你可以直接用它来记录日志. 以下代码演示了日志接口的 ...

  7. javascript和jquery 移除事件 和 改变样式

    javascript移除事件: document.getElementById("word").onmouseover = null; javascript改变样式: docume ...

  8. netstat 显示当前网络连接的统计信息

    C:\Users\Administrator\Desktop\hsqldb-2.3.2\data>netstat -h Displays protocol statistics and curr ...

  9. spring json 返回中文乱码

    如前台显示的json数据中的中文为???,则可尝试以下方法. 方法一(推荐):在@RequestMapping中添加  produces={"text/html;charset=UTF-8; ...

  10. H5 canvas 绘图

    H5的canvas绘图技术   canvas元素是HTML5中新添加的一个元素,该元素是HTML5中的一个亮点.Canvas元素就像一块画布,通过该元素自带的API结合JavaScript代码可以绘制 ...