A.Calandar

题意:一年12个月,一个月30天,5天一周,已知某天的年月日星期数,求所给年月日的星期数是多少

思路:直接进行计算,其实每个月每年都是等长度的就使得计算的时候忽略年月,可以直接进行日期的比较,因为每个月都有长度相等的六周

代码:

 1 #include<bits/stdc++.h>
2 using namespace std;
3 string day[6]={"Friday","Monday","Tuesday","Wednesday","Thursday","Friday"};
4
5 int main(){
6 int t;
7 scanf("%d",&t);
8 while(t--){
9 long long int year1,month1,day1,year2,month2,day2;
10 string s1,s2;
11 cin>>year1>>month1>>day1>>s1;
12 scanf("%lld %lld %lld",&year2,&month2,&day2);
13 int num=0;
14 for(int i=0;i<5;i++){
15 if(s1==day[i]){
16 num=i;
17
18 break;
19 }
20 }
21 if(day1<=day2){
22 num=(num+(day2-day1)%5)%5;
23 }else{
24 num=(num+5-(day1-day2)%5)%5;
25 }
26 cout<<day[num]<<endl;
27 }
28 }

C.Wandering Robot

题意:机器人通过'U','D','L','R'进行移动,分别进行上下左右的移动,从坐标(0,0)开始,问在经过k次移动之后,所能达到的最大的距离,距离指|x1-x2|+|y1-y2|

当时想错的地方:1.进行距离最远的判定时,考虑左右的伸缩变换,比如说最后位置落在右上方,而且最远距离要高于最后位置,这样就肯定有向左或者向下的伸缩,计算如果没有这样的伸缩结果是什么,再加上伸缩了多少次,进行加减运算(((可是这样进行计算,在运动复杂的情况下,不一定是满足这样的情况,可能有复杂的圆周运动也 不是这样的,这样计算就会有误差,所以进行计算的时候应该进行计算n-1次最后的位置在哪,然后用最后一次的位置进行循环找到最后一次的位置最高在哪)))

代码:

 1 #include<iostream>
2 #include<algorithm>
3 #include<cmath>
4 #include<cstring>
5 using namespace std;
6 const int maxx=2e6+2;
7 string c;
8 int main(){
9 int t;
10 scanf("%d",&t);
11 while(t--){
12 long long n,k;
13 cin>>n>>k>>c;
14 long long x = 0,y = 0;
15 long long int sum=0;
16 for(int i=0;i<c.length();i++){
17 if(c[i]=='R'){
18
19 x++;
20 }
21 if(c[i]=='L'){
22 x--;
23
24 }
25 if(c[i]=='U'){
26 y++;
27
28 }
29 if(c[i]=='D'){
30 y--;
31
32 }
33 if(sum<((abs(x)+abs(y))))
34 {
35 sum = abs(x)+abs(y);
36 }
37 }
38 x*=(k-1);
39 y*=(k-1);
40
41 for(int i = 0;i < c.length();i++)
42 {
43 if(c[i]=='R'){
44
45 x++;
46 }
47 if(c[i]=='L'){
48 x--;
49
50 }
51 if(c[i]=='U'){
52 y++;
53
54 }
55 if(c[i]=='D'){
56 y--;
57 }
58 if(sum<(abs(x)+abs(y)))
59 {
60 sum = abs(x)+abs(y);
61 }
62 }
63 printf("%lld\n",sum);
64
65 }
66 }

D.Game on a Graph

题意:有k个人分成了两组,n个点,m条边,每次一个人选择一条边进行消除,直到某个人使得一个点无法连接其他的边,也就是说使得没有边和这个点链接,这样的话这个人就是输了

当时想错的地方:1.其实当初想的时候就是考虑是不是图论的问题,后来觉得限制条件太多了(((其实本不该想这么多的,大家都是为了规避那种点,肯定会选择除了必须的几条线之外的线,只需要判断如果把多余的线选完了,那么下一个人是哪个组的就好了)))

代码:

 1 #include<iostream>
2 #include<algorithm>
3 #include<cmath>
4 #include<cstring>
5 using namespace std;
6
7 int main(){
8 int t;
9 cin>>t;
10 string s;
11 int n,k,a,b,m;
12
13 while(t--)
14 {
15 cin>>k>>s>>n>>m;
16 int time = (m-n+1)%k;
17 for(int i = 0;i < m;i++)
18 {
19 cin>>a>>b;
20 }
21 if(s[time]=='1')
22 cout<<2<<endl;
23 else cout<<1<<endl;
24 }
25 }

总结:1.这次做题总是把问题给复杂化,要记得化繁为简,抽象出里面的内涵东西,其实这也很难,最好是保证好最初的状态,精神状态要在,就赢了一半了,剩下的就靠平时的多练习才行,还没看清题目,千万不要往难题的方向想,不然肯定会复杂化某个题,就会化简为繁了

QFNU-ACM 2019.5.23组队赛 2019山东省赛复现的更多相关文章

  1. Beta冲刺(2/7)——2019.5.23

    所属课程 软件工程1916|W(福州大学) 作业要求 Beta冲刺(2/7)--2019.5.23 团队名称 待就业六人组 1.团队信息 团队名称:待就业六人组 团队描述:同舟共济扬帆起,乘风破浪万里 ...

  2. HDU 4041 Eliminate Witches! (模拟题 ACM ICPC 2011亚洲北京赛区网络赛)

    HDU 4041 Eliminate Witches! (模拟题 ACM ICPC 2011 亚洲北京赛区网络赛题目) Eliminate Witches! Time Limit: 2000/1000 ...

  3. Triangle (第8届山东省赛的某题)

    triangle(第8届山东省赛的某题) 传送门 题意:喵了个呜,这题意真是峰回路转啊.懒死了,不想描述. 做法:我们拿set或线段树维护exp的最小值,每次取出exp值最小的边,删除之.并更新这条边 ...

  4. 2013年山东省赛F题 Mountain Subsequences

    2013年山东省赛F题 Mountain Subsequences先说n^2做法,从第1个,(假设当前是第i个)到第i-1个位置上哪些比第i位的小,那也就意味着a[i]可以接在它后面,f1[i]表示从 ...

  5. HEX SDUT 3896 17年山东省赛D题

    HEX SDUT 3896 17年山东省赛D题这个题是从矩形的左下角走到右上角的方案数的变形题,看来我对以前做过的题理解还不是太深,或者是忘了.对于这种题目,直接分析它的性质就完事了.从(1,1)走到 ...

  6. 2018山东省赛sequence

    2018山东省赛sequence因为必须要删除一个数,所以可以计算每个数删除的代价,从而选取代价最小的进行删除如果一个数大于它前面的所有数的最小值而小于次小值,删除最小值的代价就要+1:如果一个数本身 ...

  7. 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 F Color it

    链接:https://www.nowcoder.com/acm/contest/163/F 来源:牛客网 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 F Color it 时间限制:C ...

  8. 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 F Color it (扫描线)

    2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 F Color it (扫描线) 链接:https://ac.nowcoder.com/acm/contest/163/F来源:牛客网 时间 ...

  9. 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 J Beautiful Numbers (数位DP)

    2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 J Beautiful Numbers (数位DP) 链接:https://ac.nowcoder.com/acm/contest/163/ ...

随机推荐

  1. 一文读懂SuperEdge拓扑算法

    前言 SuperEdge service group 利用 application-grid-wrapper 实现拓扑感知,完成了同一个 nodeunit 内服务的闭环访问 在深入分析 applica ...

  2. AggregateReport V2.2.0

    1. 说明 AggregateReport V2.2.0终于跟大家见面了!从V1.0.0到V2.2.0 宝路听取了很多同学的建议!感谢大家一路的信任与支持! 2. 文章导读 如果不了解此工具的同学,建 ...

  3. Elasticsearch 分页查询

    目录 前言 from + size search after scroll api 总结 参考资料 前言 我们在实际工作中,有很多分页的需求,商品分页.订单分页等,在MySQL中我们可以使用limit ...

  4. 轻松理解 Java 静态代理/动态代理

    目录 什么是代理模式 定义 代理模式的主要角色 优点 缺点 静态代理 动态代理 JDK原生动态代理 例子 分析 小结 CGLIB动态代理 例子 分析 final类型 其他方案 尾声 理解Java动态代 ...

  5. mysql大于当前时间置顶并按升序排序,小于当前时间的置尾并按降序排序

    现在用id来代替时间这样好测试 看一下测试表数据 执行按需求规则排序的sql SELECT * FROM number_generator ORDER BY id < 16 , IF(id &l ...

  6. Spring Boot 2.3 新特性优雅停机详解

    什么是优雅停机 先来一段简单的代码,如下: @RestController public class DemoController { @GetMapping("/demo") p ...

  7. create-react-app 核心思路分析

    原文链接:http://axuebin.com/articles/fe-solution/cli/cra.html,转载请联系 Create React App is an officially su ...

  8. 22. VUE 插槽-详解

    插槽 一直对插槽不理解,今天学习,并整理一下,希望日后可以灵活运用. (一)插槽内容 先简单来个例子,看一下插槽的租作用. 1.1 不使用插槽 父组件中: <div id="app&q ...

  9. editorconfig、eslint、prettier三者的区别、介绍及使用

    每次搭建新项目都少不了这些工具,但时间一久就忘记了,下次搭新项目时又要四处查官方文档,因此特此记录,主要内容是对这三个工具的理解,以及具体使用方式 editorconfig 理解 先看官网的定义: E ...

  10. JMeter 结果处理常见问题

    1. 前言 2. 结果处理常见问题 1)在察看结果树中只看失败情况 2)如何把日志放入文件查看 3)cvs 文件中文读取乱码 4)失败请求数据的采集 5)结果树响应数据中文乱码解决办法 1. 前言 工 ...