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补题的更多相关文章

  1. 2020.12.14vj补题

    A. Lucky Ticket 题意:就是说4与7是幸运数字,用4和7组成的数字也是幸运数字,问所给数字是不是幸运数字 思路:直接敲 代码: 1 #include<iostream> 2 ...

  2. 2020 wannafly camp 补题 day1

    题目可以从牛客上找到. 最简单的一个题应该是B B. 密码学 这个应该就是倒着推,题目给了你加密的顺序,所以我们逆推这个就可以得到每一次加密前的字符串. 1H. 最大公约数 题目大意就是给你一个范围1 ...

  3. 2020.1.30--vj补题

    C - C CodeForces - 991C 题目内容: After passing a test, Vasya got himself a box of n candies. He decided ...

  4. 2020.11.6-vj补题

    A - A CodeForces - 136A 题解:按输入的顺序输出对应的下标即可,定义一个数组,将输入的作为下标,下标为值,最后依次输出即可: #include<bits/stdc++.h& ...

  5. 【补题记录】ZJU-ICPC Summer Training 2020 部分补题记录

    补题地址:https://zjusummer.contest.codeforces.com/ Contents ZJU-ICPC Summer 2020 Contest 1 by Group A Pr ...

  6. 【JOISC 2020 补题记录】

    目录 Day 1 Building 4 Hamburg Steak Sweeping Day 2 Chameleon's Love Making Friends on Joitter is Fun R ...

  7. Codeforces VP/补题小记 (持续填坑)

    Codeforces VP/补题小记 1149 C. Tree Generator 给你一棵树的括号序列,每次交换两个括号,维护每次交换之后的直径. ​ 考虑括号序列维护树的路径信息和,是将左括号看做 ...

  8. 第十届山东省acm省赛补题(1)

    今天第一场个人训练赛的题目有点恐怖啊,我看了半个小时多硬是一道都不会写.我干脆就直接补题去了.... 先补的都是简单题,难题等我这周末慢慢来吧... A Calandar Time Limit: 1 ...

  9. 2020.12.12【NOIP提高B组】模拟 总结

    第一次来 B 组做,虚的很 T1: 容斥原理 比赛时也打了个大致,但挂了,只有 50 分. 赛后重构了一下代码,AC \(UPDATE:2020/12/13\ \ \ 14:10\) 思路: 像前缀和 ...

随机推荐

  1. 在linux系统中登录mysql时出现Enter password: ERROR 1045 (28000): Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)的解决办法

    在一次使用mysql数据库是出现了这种错误,于是乎去百度看了很多博文踩了很多坑,最终解决了问题,分享给大家. 转载与:https://blog.csdn.net/css33/article/detai ...

  2. Java字符串==和equals的区别

    首先我们来了解一下String类,Java的字符串是一旦被赋值之后无法更改的(这里的无法更改是指不能将字符串中单个或一段字符重新赋值),这也是Java虚拟机为了减少内存开销,避免字符串的重复创建设立的 ...

  3. 攻防世界 reverse 进阶 15-Reversing-x64Elf-100

    15.Reversing-x64Elf-100 这题非常简单, 1 signed __int64 __fastcall sub_4006FD(__int64 a1) 2 { 3 signed int ...

  4. Android学习之服务初体验

    •概念 Service(服务)是一个长期运行在后台,没有用户界面的应用组件,即使切换到另一个应用程序或者后台,服务也可以正常运行: 因此,服务适合执行一些不需要显示界面的后台耗时操作,比如下载网络数据 ...

  5. Android Studio 之 BaseAdapter 学习笔记

    •前行必备--ListView的显示与缓存机制 我们知道 ListView.GridView 等控件可以展示大量的数据信息. 假如下图中的 ListView 可以展示 100 条信息,但是屏幕的尺寸是 ...

  6. 使用sysbench测试mysql及postgresql(完整版)

    使用sysbench测试mysql及postgresql(完整版) 转载请注明出处https://www.cnblogs.com/funnyzpc/p/14592166.html 前言 使用sysbe ...

  7. python基础(十七):函数

    在正式讲述函数之前,先给大家说明一点:编写函数就是"面向过程"的方式,编写类就是"面向对象"的方式.你如果不知道这是啥意思,至少别人提到这2个词你应该知道是在干 ...

  8. 面试官:Java中线程是按什么顺序执行的?

    摘要:Java中多线程并发的执行顺序历来是面试中的重点,掌握Java中线程的执行顺序不仅能够在面试中让你脱颖而出,更能够让你在平时的工作中,迅速定位由于多线程并发问题导致的"诡异" ...

  9. [解决] Assertion `srcIndex < srcSelectDimSize` failed.

    在finetune Chinese GPT2的时候遇到如上错误,错误原因index越界,原始代码中给定的输入长度是1024,但是我使用模型可接受的输入长度是512,把输入长度都改为512,错误解决

  10. python基础(补充):python三大器之装饰器

    函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回. 我们来实现一个可变参数的求和.通常情况下,求和的函数是这样定义的: def calc_sum(*args): i = ...