当前位置: 首页 > news >正文

Codeforces Round #215 (Div. 2) 解题报告

昨天第一题竟然还错了。。。真是忧伤。现在改过来了

Problem A Sereja and Coat Rack

一共有n个房间第i个能赚ai的钱不够一个房间陪d钱,算最后的赚了多少。

贪心思想赚的少的先来。

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <string.h>
 4 #include <algorithm>
 5 #define INF 0x7fffffff
 6 
 7 using namespace std;
 8 bool cmp(int a, int b){return a>b;}
 9 int main()
10 {
11 //    freopen("in.txt", "r", stdin);
12 
13     int n, d, a[111], m;
14     while(scanf("%d%d", &n, &d)!=EOF){
15         for(int i=0; i<n; i++){
16             scanf("%d", &a[i]);
17         }
18         scanf("%d", &m);
19         int ans = 0;
20         sort(a, a+n);
21         for(int i=0; i<min(m,n); i++){
22             ans+=a[i];
23         }
24         ans-=d*(m>n?(m-n):0);
25         cout << ans << endl;
26     }
27     return 0;
28 }
View Code

 

Problem B Sereja and Suffixes
统计第i个后有多少个不同的数,开局初始化一下即可。然后每次查询。

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <string.h>
 4 #include <algorithm>
 5 #define INF 0x7fffffff
 6 
 7 using namespace std;
 8 int tag[100100], dp[100100], a[100100];
 9 
10 int main()
11 {
12 //    freopen("in.txt", "r", stdin);
13     int n, m;
14     while(scanf("%d%d", &n, &m)!=EOF){
15         memset(tag, 0, sizeof tag);
16         memset(dp, 0, sizeof dp);
17         for(int i=0; i<n; i++){
18             scanf("%d", &a[i]);
19         }
20         for(int i=n-1; i>=0; i--){
21             if(tag[a[i]]==0){
22                 tag[a[i]] = 1;
23                 dp[i] = dp[i+1]+1;
24             }else dp[i] = dp[i+1];
25         }
26         for(int i=0; i<m; i++){
27             int temp;
28             scanf("%d", &temp);
29             cout << dp[temp-1] << endl;
30         }
31     }
32     return 0;
33 }
View Code

 Problem C Sereja and Algorithm

找规律题,想了半天。最终结论很简单只要满足abs(a-b)>=2 || abs(b-c)>=2 || abs(c-a)>=2返回YES否则。

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <string.h>
 4 #include <algorithm>
 5 #define INF 0x7fffffff
 6 
 7 using namespace std;
 8 
 9 int dp[100100][5];
10 char str[100100];
11 
12 bool Judge(int a, int b, int c){
13     if(a==0 || b==0 || c==0) return false;
14     if(abs(a-b)>=2 || abs(b-c)>=2 || abs(c-a)>=2)return false;
15     return true;
16 }
17 
18 int main()
19 {
20 //    freopen("in.txt", "r", stdin);
21     while(cin >> str+1)
22     {
23         int len = strlen(str+1);
24         for(int i=1; i<=len; i++){
25             dp[i][0] = dp[i-1][0];
26             dp[i][1] = dp[i-1][1];
27             dp[i][2] = dp[i-1][2];
28             dp[i][str[i]-'x'] ++;
29         }
30         int q, l, r;
31         scanf("%d", &q);
32         for(int i=0; i<q; i++){
33             scanf("%d%d", &l, &r);
34             int tx = dp[r][0]-dp[l-1][0], ty = dp[r][1]-dp[l-1][1], tz = dp[r][2]-dp[l-1][2];
35             if(r-l<2)printf("YES\n");
36             else if(Judge(tx,ty,tz))printf("YES\n");
37             else printf("NO\n");
38         }
39     }
40     return 0;
41 }
View Code

 

转载于:https://www.cnblogs.com/shu-xiaohao/p/3444737.html

相关文章:

  • CGI Internal Server Error
  • Symantec终止售卖SIM产品
  • (11)MATLAB PCA+SVM 人脸识别
  • C++ - 函数模板(function template) 的 重载(overload) 详解 及 代码
  • Windows Phone 8初学者开发—第6部分:设置应用程序的样式
  • VHD_Update_diskpart
  • mysql乱码问题解决办法
  • (转)利用ant在Mac 下自动化打包签名Android程序
  • 动态定义二维数组的方法
  • Data Domain虚拟带库(VTL)的部署和实施
  • 在VMM2012R2中使用二代虚拟机创建的模板无法创建虚拟机的解决方法
  • C#获取url中参数键值对的方法
  • 零点起飞学HTML+CSS
  • linux下-scp不需要密码,简历相互信任关系
  • SmartWatch2开发-Control API简介
  • Linux CTF 逆向入门
  • Mysql优化
  • Vue 重置组件到初始状态
  • Vue2.0 实现互斥
  • 编写符合Python风格的对象
  • 从setTimeout-setInterval看JS线程
  • 极限编程 (Extreme Programming) - 发布计划 (Release Planning)
  • 前端临床手札——文件上传
  • 前端相关框架总和
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 使用API自动生成工具优化前端工作流
  • 译米田引理
  • 分布式关系型数据库服务 DRDS 支持显示的 Prepare 及逻辑库锁功能等多项能力 ...
  • 扩展资源服务器解决oauth2 性能瓶颈
  • 如何正确理解,内页权重高于首页?
  • #define
  • (2009.11版)《网络管理员考试 考前冲刺预测卷及考点解析》复习重点
  • (翻译)terry crowley: 写给程序员
  • (三)Pytorch快速搭建卷积神经网络模型实现手写数字识别(代码+详细注解)
  • (五)IO流之ByteArrayInput/OutputStream
  • (一)Linux+Windows下安装ffmpeg
  • (原創) 如何刪除Windows Live Writer留在本機的文章? (Web) (Windows Live Writer)
  • (原創) 是否该学PetShop将Model和BLL分开? (.NET) (N-Tier) (PetShop) (OO)
  • (转)linux 命令大全
  • (转)Scala的“=”符号简介
  • (转)项目管理杂谈-我所期望的新人
  • (转)总结使用Unity 3D优化游戏运行性能的经验
  • ./configure,make,make install的作用(转)
  • .Net 6.0 处理跨域的方式
  • .NET CORE 2.0发布后没有 VIEWS视图页面文件
  • [ vulhub漏洞复现篇 ] ThinkPHP 5.0.23-Rce
  • [2009][note]构成理想导体超材料的有源THz欺骗表面等离子激元开关——
  • [AIGC] 开源流程引擎哪个好,如何选型?
  • [BZOJ 1032][JSOI2007]祖码Zuma(区间Dp)
  • [C/C++] C/C++中数字与字符串之间的转换
  • [C/C++随笔] char与unsigned char区别
  • [C++]C++入门--引用
  • [C++11 多线程同步] --- 条件变量的那些坑【条件变量信号丢失和条件变量虚假唤醒(spurious wakeup)】
  • [CF226E]Noble Knight's Path
  • [Codeforces] combinatorics (R1600) Part.2