2017河工大校赛补题CGH and 赛后小结

2024-02-01 01:30

本文主要是介绍2017河工大校赛补题CGH and 赛后小结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

网页设计课上实在无聊,便开始补题,发现比赛时候僵着的东西突然相通了不少

首先,“追妹”这题,两个队友讨论半天,分好多种情况最后放弃(可是我连题目都没看啊),今天看了之后试试是不是直接判断情况就可以,于是出现

 1 #include<stdio.h>
 2 int main()
 3 {
 4     int T,n,m,a,b,u,v,i,flag;   
 5     scanf("%d",&T);
 6     while(T--)
 7     {
 8         flag=0;
 9         scanf("%d%d%d%d",&n,&m,&a,&b);
10         for(i=1;i<=m;i++)
11         {
12             scanf("%d%d",&u,&v);
13             if(u==a&&v==b  ||  u==b&&v==a)  flag=1;
14         }
15         if(flag)  printf("chhappy\n");
16         else      printf("chsad\n");
17     }
18     return 0;
19 }
View Code

这样的1A,噗...............喷血,这个不多说当时没看题,遗憾遗憾。
Next,“最大子段和”,我发4, 5个小时比赛3人起码在这上面花了2.5个小时,结果依旧没A。太傻了各自,当时怎么就没想过for循环跑的时候 i+=2 ,唉,无奈,居然会如此给A

 1 #include<cstdio>
 2 #include<iostream>
 3 #include<cstring>
 4 #include<algorithm>
 5 using namespace std;
 6 #define maxn 100005
 7 int num[maxn];
 8 int main()
 9 {
10     int t,n,sum;
11     cin>>t;
12     while(t--)
13     {
14         cin>>n;
15         for(int i=1;i<=n;i++)  cin>>num[i];
16         int ans=num[1],sum=num[1]; 
17         for(int i=2;i<n;i+=2) 
18         {
19             sum+=(num[i]+num[i+1]);
20             sum=max(sum,num[i+1]);
21             ans=max(ans,sum);
22         }
23         sum=num[2];
24         for(int i=3;i<n;i+=2)
25         {
26             sum+=(num[i]+num[i+1]);
27             sum=max(sum,num[i+1]);
28             ans=max(ans,sum);
29         }
30         cout<<ans<<endl;
31     }
32     return 0;
33 }
View Code

最后那个宝石题,开局时候队友看了之后没思路不想做,导致全程只有我一个人写这题,当时觉得这题很水,就是魔力值更新就可以了,于是讲个队花听,队花不停恩哦恩哦,结果我发现自己不知道怎么不断更新,然后队花就去和主代码手继续聊BFS去了。手撸这题时候想用排序更新一下,希望数据比较弱水过去,结果WA了,55555555555....今天灵感突现用这种方法来循环更新,结果过了,蠢哭自己

 1 #include <iostream>
 2 #include<cstdio>
 3 using namespace std;
 4 #define maxn 100005
 5 int a[maxn],b[maxn],c[maxn],AA[maxn];
 6 int main()
 7 {
 8     ios::sync_with_stdio(false);
 9     int t,n,m;
10     cin>>t;
11     while(t--)
12     {
13         cin>>n>>m;
14         int flag=1;
15         for(int i=1; i<=n; i++)  cin>>AA[i];
16         for(int i=1; i<=m; i++)
17         {
18             cin>>a[i]>>b[i]>>c[i];
19             AA[c[i]]=min(AA[c[i]], AA[a[i]]+ AA[b[i]]);
20         }
21         while(flag)
22         {
23             flag=0;
24             for(int i=1; i<=m; i++)
25                 if(AA[c[i]]> AA[a[i]]+ AA[b[i]])
26                 {
27                     flag=1;
28                     AA[c[i]]= AA[a[i]]+ AA[b[i]];
29                 }
30         }
31         for(int i=1; i<=n; i++)  printf("%d%c",AA[i],i==n?'\n':' ');
32     }
33     return 0;
34 }
View Code

赛后来波小结,毕竟贵圈的传统就是你做出来的题目就全是SB题。

  热身赛B题英文题轻松翻译,但题意一边是没输入,一边是两个样例,什么鬼,导致被队友质疑英语水平,开局不利(PS:恩爱狗,热身赛时候两个人在那讲高数,笑声不断,可怜的我承担着AK热身赛题的任务)..正式比赛题意都很简单,主代码手想的都太复杂(还好前2个水题全程都是自己单撸A的),想的复杂的结果就是都没A掉,近乎打铁。数学题第一次没写出来,数学公式推导了半个小时,庞大的计算量,结果出来的公式错了,很伤,很影响士气。其他都不想说,这场比赛前的Codeforces等了快2周,本想趁机涨分,结果熬夜撸代码时候发现忘了报名没法提交.当天下午BNU校赛恰好时间撞车,不过见到格格本人也算一个额外惊喜吧。总之,一次不错的ACM比赛体验,下次会狠狠地再来...

转载于:https://www.cnblogs.com/weimeiyuer/p/6756241.html

这篇关于2017河工大校赛补题CGH and 赛后小结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/665665

相关文章

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法

Java中List的contains()方法的使用小结

《Java中List的contains()方法的使用小结》List的contains()方法用于检查列表中是否包含指定的元素,借助equals()方法进行判断,下面就来介绍Java中List的c... 目录详细展开1. 方法签名2. 工作原理3. 使用示例4. 注意事项总结结论:List 的 contain

Flutter打包APK的几种方式小结

《Flutter打包APK的几种方式小结》Flutter打包不同于RN,Flutter可以在AndroidStudio里编写Flutter代码并最终打包为APK,本篇主要阐述涉及到的几种打包方式,通... 目录前言1. android原生打包APK方式2. Flutter通过原生工程打包方式3. Futte

Docker镜像pull失败两种解决办法小结

《Docker镜像pull失败两种解决办法小结》有时候我们在拉取Docker镜像的过程中会遇到一些问题,:本文主要介绍Docker镜像pull失败两种解决办法的相关资料,文中通过代码介绍的非常详细... 目录docker 镜像 pull 失败解决办法1DrQwWCocker 镜像 pull 失败解决方法2总

Android Kotlin 高阶函数详解及其在协程中的应用小结

《AndroidKotlin高阶函数详解及其在协程中的应用小结》高阶函数是Kotlin中的一个重要特性,它能够将函数作为一等公民(First-ClassCitizen),使得代码更加简洁、灵活和可... 目录1. 引言2. 什么是高阶函数?3. 高阶函数的基础用法3.1 传递函数作为参数3.2 Lambda

Ollama Python 使用小结

《OllamaPython使用小结》Ollama提供了PythonSDK,使得开发者能够在Python环境中轻松集成和使用本地运行的模型进行自然语言处理任务,具有一定的参考价值,感兴趣的可以了解一... 目录安装 python SDK启动本地服务使用 Ollama 的 Python SDK 进行推理自定义客

java String.join()的使用小结

《javaString.join()的使用小结》String.join()是Java8引入的一个实用方法,用于将多个字符串按照指定分隔符连接成一个字符串,本文主要介绍了javaString.join... 目录1. 方法定义2. 基本用法2.1 拼接多个字符串2.2 拼接集合中的字符串3. 使用场景和示例3

Qt 中 isHidden 和 isVisible 的区别与使用小结

《Qt中isHidden和isVisible的区别与使用小结》Qt中的isHidden()和isVisible()方法都用于查询组件显示或隐藏状态,然而,它们有很大的区别,了解它们对于正确操... 目录1. 基础概念2. 区别清见3. 实际案例4. 注意事项5. 总结1. 基础概念Qt 中的 isHidd

SQL中的CASE WHEN用法小结

《SQL中的CASEWHEN用法小结》文章详细介绍了SQL中的CASEWHEN函数及其用法,包括简单CASEWHEN和CASEWHEN条件表达式两种形式,并通过多个实际场景展示了如何使用CASEWH... 目录一、简单CASE WHEN函数:二、CASE WHEN条件表达式函数三、常用场景场景1:不同状态展