2020.12.20vj补题
A - Insomnia cure
题意:一共s只龙,每隔k,l,m,n只龙就会受伤,问这s只龙有多少龙是受伤的
思路:看起来题目范围并不是很多,直接进行循环判断
代码:

1 #include<iostream>
2 #include<cstdio>
3 #include<cmath>
4 #include<cstring>
5 #include<algorithm>
6 using namespace std;
7 int main(){
8 int sum=0,s=0;
9 int k,l,m,n;
10 int a[15100]={0};
11 scanf("%d",&k);
12 scanf("%d",&l);
13 scanf("%d",&m);
14 scanf("%d",&n);
15 scanf("%d",&s);
16 sum=0;
17 for(int i=1;i<=s;i++){
18 if(i%k==0){
19 sum++;
20 }else if(i%l==0){
21 sum++;
22 }else if(i%m==0){
23 sum++;
24 }else if(i%n==0){
25 sum++;
26 }
27 }
28 printf("%d\n",sum);
29 }
B - Escape
题意:总共是c公里,公主以每小时Vp公里的速度逃跑,龙在t小时后发现公主逃跑然后开始以每小时Vd公里的速度追,当龙追上公主的时候,公主就会扔一块糖果出来,然后龙就会捡起糖果拿回最开始的位置,并且停留f小时,再继续追赶公主,问公主逃跑总共需要多少糖果
思路:分开直接进行梳理计算就可以,只是龙拿回起点以后,再追公主的时候就要重新计算一下时间,一定记得是double
代码:

1 #include<iostream>
2 #include<cstdio>
3 #include<cmath>
4 #include<cstring>
5 #include<algorithm>
6 using namespace std;
7 int main(){
8 double vp,vd,t,f,c;
9 scanf("%lf",&vp);
10 scanf("%lf",&vd);
11 scanf("%lf",&t);
12 scanf("%lf",&f);
13 scanf("%lf",&c);
14 double g=vp*t;
15 int sum=0;
16 int l=0;
17 if(g>=c){
18 printf("0\n");
19 }else{
20 if(vp>=vd){
21 printf("0\n");
22 }else{
23 double m=g*1.0/(vd-vp);//第一次相遇的时间
24 double s=0;
25 g+=vp*m;//第一次相遇的位置
26 // printf("%d\n",g);
27 while(g<c){
28 if(g<c){
29 sum++;
30 }else{
31 break;
32 }
33 s=0;
34 s+=f+m;
35 g+=s*vp;//返回后公主走的位置
36 m=g*1.0/(vd-vp);
37 g+=m*vp;
38
39 }
40 printf("%d",sum);
41 }
42 }
43 }
C - Terse princess
题意:有个公主找王子,如果这个人比之前所有王子的财富都高,公主就Oh,如果这个人比之前所有的财富值的总和加起来还多,就WOW,有n个人a次Oh,b次WOW。输出一个序列满足a,b,如果没有就输出-1.
思路:就是直接构造,先构造wow的数,再构造oh的数,第一个数输出是n-a-b里面的数,然后先输出b里面的数,然后再输出a的数,注意的情况就是:1)n为1,b为0,a为0的情况,直接输出1即可;2)n-a为1,b为0的情况,这样的无法构造;3)其余的情况当b的数的时候其实直接进行乘2就行,就是当b为0的时候注意一下,需要往后靠一个,因为如果b为0,a放在第二个位置,那么就会产生wow的效果
wa掉的点:一开始的大致思路是对的,就是特殊点没有考虑到,然后又改想着先输出降序的让他成为那n-a-b个数,发现也是会wa掉,这样会吹西安负数,如果前面输出都是1,这样很容易输出负数,我就想着先输出100这样进行,发现很可能也会超过50000,这样一来就用1先输出,像题目中那样,看着样例知道了当时思路中没有考虑到特殊样例,即使是在看着样例的情况下改的,发现也要wa掉10发才能够真的做对,从wa思路到wa特殊样例到wa数值范围,就一点一点的改
代码:

1 #include<iostream>
2 #include<cstdio>
3 #include<cmath>
4 #include<cstring>
5 #include<algorithm>
6 using namespace std;
7 int main(){
8 int n,a,b;
9 scanf("%d %d %d",&n,&a,&b);
10 int sum=0;
11 int p[150]={0};
12 for(int i=0;i<=n;i++){
13 p[i]=1;
14 }
15 if(n==1&&b==0&&a==0){
16 printf("1\n");
17 }else if(n-a==1&&b==0){
18 printf("-1\n");
19 }else{
20 int sum1=0;
21 int item=n-a-b;
22 for(int i=1;i<=b;i++){
23 //int item=sum1;
24 //printf("%d %d\n",sum,item);
25 p[1+i]=p[i]*2;
26 }
27 if(b==0){
28 b++;
29 }
30 for(int i=1;i<=a;i++){
31 p[b+1+i]=p[b+i]+1;
32 }
33 for(int i=1;i<=n;i++){
34 printf("%d ",p[i]);
35 }
36 }
37
38 }
最近补题的感想:最近也可能忙于复习,就感觉事情很多,但是干完以后自己又没有什么收获,就像是在浪费时间,从繁忙中挤出时间来一边补自己和大家一起做的cf,一边抽出时间来补自己要求比别人多补的cf,可能是最近cf都是思维题,所以可能锻炼了基本的一些思维,学到了一些新的思维精髓,也因为算法题比较少,最近一直也没有怎么好好的学习算法,就想着补题的时候看算法,系统的看从头到尾看是感觉到真的没有时间,真的感觉到:明日复明日明日何其多,但是即使wa掉很多发,但是自己又做对的感觉真的贼好,有时候比一次就做对的感觉也要好,少刷水题,水题真的没什么用处,一定坚持下去多接触接触自己踮脚可以够到的题
2020.12.20vj补题的更多相关文章
- 2020.12.14vj补题
A. Lucky Ticket 题意:就是说4与7是幸运数字,用4和7组成的数字也是幸运数字,问所给数字是不是幸运数字 思路:直接敲 代码: 1 #include<iostream> 2 ...
- 2020 wannafly camp 补题 day1
题目可以从牛客上找到. 最简单的一个题应该是B B. 密码学 这个应该就是倒着推,题目给了你加密的顺序,所以我们逆推这个就可以得到每一次加密前的字符串. 1H. 最大公约数 题目大意就是给你一个范围1 ...
- 2020.1.30--vj补题
C - C CodeForces - 991C 题目内容: After passing a test, Vasya got himself a box of n candies. He decided ...
- 2020.11.6-vj补题
A - A CodeForces - 136A 题解:按输入的顺序输出对应的下标即可,定义一个数组,将输入的作为下标,下标为值,最后依次输出即可: #include<bits/stdc++.h& ...
- 【补题记录】ZJU-ICPC Summer Training 2020 部分补题记录
补题地址:https://zjusummer.contest.codeforces.com/ Contents ZJU-ICPC Summer 2020 Contest 1 by Group A Pr ...
- 【JOISC 2020 补题记录】
目录 Day 1 Building 4 Hamburg Steak Sweeping Day 2 Chameleon's Love Making Friends on Joitter is Fun R ...
- Codeforces VP/补题小记 (持续填坑)
Codeforces VP/补题小记 1149 C. Tree Generator 给你一棵树的括号序列,每次交换两个括号,维护每次交换之后的直径. 考虑括号序列维护树的路径信息和,是将左括号看做 ...
- 第十届山东省acm省赛补题(1)
今天第一场个人训练赛的题目有点恐怖啊,我看了半个小时多硬是一道都不会写.我干脆就直接补题去了.... 先补的都是简单题,难题等我这周末慢慢来吧... A Calandar Time Limit: 1 ...
- 2020.12.12【NOIP提高B组】模拟 总结
第一次来 B 组做,虚的很 T1: 容斥原理 比赛时也打了个大致,但挂了,只有 50 分. 赛后重构了一下代码,AC \(UPDATE:2020/12/13\ \ \ 14:10\) 思路: 像前缀和 ...
随机推荐
- 如何优雅地学习计算机编程-C++1
如何优雅的学习计算机编程--C++ 0.导入 如何优雅地学习计算机编程.我们得首先了解编程是什么?打个比方--写信. 大家都知道写信所用的语言双方都懂,这样的信才做到了信息交流,人和计算机也是如此人和 ...
- vue封装公用弹出框方法,实现点击出现操作弹出框
vue封装公用弹出框方法,实现点击出现操作弹出框 如上图所示,这次要实现一个点击出现操作弹框的效果:并将这个功能封装成一个函数,便于在项目的多个地方使用. 具体思路是: 封装一个组件,组件保护一个插槽 ...
- thinkphp 5.1框架利用及rce分析
前言 上个学期钻研web渗透的时候接触过几个tp的框架,但那时候还没有写blog的习惯,也没有记录下来,昨天在做ctf的时候正好碰到了一个tp的框架,想起来就复现一下 正文 进入网站,标准笑脸,老tp ...
- 日志文件删除shell脚本
大日志文件切割shell脚本 #!/bin/bash # --------------------------------------------------------------------- # ...
- python基础(五):列表的使用(上)
什么是列表 列表是一系列元素,按特定顺序排列组成.列表总的元素之间没有任何关系,既可以时字符串,也可以是数字,还可以是布尔值. 由此可以看出,列表通常包含多个元素,因此再给列表命名的时候,最好使用复数 ...
- BPF for storage:一种受外核启发的反式
BPF for storage:一种受外核启发的反式 译自:BPF for storage: an exokernel-inspired approach BPF主要用于报文处理,通过绕过网络栈提高报 ...
- 大话数据结构.epub
电子书资源:大话数据结构 书籍简介 本书为超级畅销书<大话设计模式>作者程杰潜心三年推出的扛鼎之作!通篇以一种趣味方式来叙述,大量引用了各种各样的生活知识来类比,并充分运用图形语言来体 ...
- 拓扑排序详解(梅开二度之dfs版按字典序输出拓扑路径+dfs版输出全部拓扑路径
什么是拓扑排序? 先穿袜子再穿鞋,先当孙子再当爷.这就是拓扑排序! 拓扑排序说白了其实不太算是一种排序算法,但又像是一种排序(我是不是说了个废话qwq) 他其实是一个有向无环图(DAG, Direct ...
- 网关Ocelot功能演示完结,久等了~~~
前言 关于网关(Ocelot)的分享,还遗留一些功能没演示呢,接着来聊聊:这次重点针对网关Ocelot使用缓存.集成Polly做服务治理.集成IdentityServer4做认证授权来详细说说:如果对 ...
- 另类的曲线方式定时Start up/Shut down VM 的解决方案
一,引言 最近看到一位小兄弟在为了做 Azure 云虚拟机的自动关机开启 在群里求助,最后也不知道结果咋样了. 至于他提到的利用 Automation Account 我是没有接触过,并且也没有看资料 ...