201812-1

#include<bits/stdc++.h>
using namespace std;
#define inf 0x3f3f3f3f
#define ll long long
const int N=200005;
const int mod=1e9+7;
const double eps=1e-8;
const double PI = acos(-1.0);
#define lowbit(x) (x&(-x))
ll gcd(ll a,ll b){return b==0?a:gcd(b,a%b);}
ll qpow(ll a,ll b){ll res=1;while(b){if(b&1) res=res*a%mod;a=a*a%mod;b>>=1;}return res;}
ll inv(ll a,ll p){return qpow(a,p-2);}
int main()
{
std::ios::sync_with_stdio(false);
// freopen("in.txt","r",stdin);
ll r,y,g;
cin>>r>>y>>g;
int n;
cin>>n;
ll ans=0;
for(int i=1;i<=n;i++)
{
ll o,x;
cin>>o>>x;
if(o==1)
{
ans+=x;
}
else if(o==2)
{
ans+=x+r;
}
else if(o==0)
{
ans+=x;
}
}
cout<<ans<<endl;
return 0;
}

201812-2

#include<bits/stdc++.h>
using namespace std;
#define inf 0x3f3f3f3f
#define ll long long
const int N=200005;
const int mod=1e9+7;
const double eps=1e-8;
const double PI = acos(-1.0);
#define lowbit(x) (x&(-x))
int main()
{
std::ios::sync_with_stdio(false);
// freopen("in.txt","r",stdin);
ll r,y,g,tot;
cin>>r>>y>>g;
tot=r+y+g;
int n;
cin>>n;
ll ans=0;
for(int i=1; i<=n; i++)
{
ll o,x;//红绿黄
cin>>o>>x;
if(o==0)
{
ans+=x;
}
else if(o==1)//红
{
if(ans>=x)//换灯
{
ll t=ans-x;
t%=tot;
if(t<g)
{
continue;
}
else if(t<g+y)
{
ans+=(r+(g+y-t));
}
else if(t<g+y+r)
{
ans+=((g+y+r)-t);
}
}
else
{
ans+=(x-ans);
}
}
else if(o==2)//黄
{
if(ans>=x)//换灯
{
ll t=ans-x;
t%=tot;
if(t<r)//红
{
ans+=(r-t);
}
else if(t<r+g)//绿
{
continue;
}
else if(t<g+y+r)//黄
{
ans+=((g+y+r)-t+r);
}
}
else
{
ans+=x-ans+r;
}
}
else if(o==3)
{
if(ans>=x)//换灯
{
ll t=ans-x;
t%=tot;
if(t<y)//黄
{
ans+=(y-t+r);
}
else if(t<y+r)//红
{
ans+=(y+r-t);
}
else if(t<g+y+r)//绿
{
continue;
}
}
else
{
continue;
}
}
}
cout<<ans<<endl;
return 0;
}

  

201812-4

#include<bits/stdc++.h>
using namespace std;
#define inf 0x3f3f3f3f
#define ll long long
const int maxn=5e5+5;
const int maxm=5e5+5;
const int mod=1e9+7;
const double eps=1e-8;
const double PI = acos(-1.0);
#define lowbit(x) (x&(-x))
struct edge
{
ll u,v,w;
} eg[maxm];
ll tot=0,pre[maxn],n,m,r;
void addedge(ll u,ll v,ll w)
{
eg[tot].u=u;
eg[tot].v=v;
eg[tot++].w=w;
}
bool cmp(edge a,edge b)
{
return a.w<b.w;
}
ll find(ll x)
{
if(pre[x]==x) return x;
else return pre[x]=find(pre[x]);
}
ll kruskal(ll n)
{
sort(eg,eg+tot,cmp);
ll cnt=0,ans=0,mx=0;
for(ll i=0; i<tot; i++)
{
ll u=eg[i].u,v=eg[i].v,w=eg[i].w;
ll fu=find(u),fv=find(v);
if(fu!=fv)
{
ans+=w;
pre[fu]=fv;
mx=max(mx,w);
cnt++;
}
if(cnt==n-1) break;
}
if(cnt<n-1) return -1;
else return mx;
}
void init()
{
tot=0;
for(ll i=1; i<=n; i++)
pre[i]=i;
}
int main()
{
std::ios::sync_with_stdio(false);
while(cin>>n>>m>>r)
{
init();
for(int i=0; i<m; i++)
{
ll a,b,c;
cin>>a>>b>>c;
addedge(a,b,c);
addedge(b,a,c);
}
cout<<kruskal(n)<<endl;
}
return 0;
}

  

CSP认证201812的更多相关文章

  1. CCF CSP 认证

    参加第八次CCF CSP认证记录 代码还不知道对不对,过两天出成绩. 成绩出来了,310分. 100+100+100+10+0: 考试13:27开始,17:30结束,提交第4题后不再答题,只是检查前四 ...

  2. 【生活】记第一次参加CCF CSP认证

    2018年03月18日 CCF CSP认证 三月份的这次csp认证,我之前是没报名的,一来自己还没什么准备,二来去年的那次认证我也没参加,开考前的一个礼拜,从朋友那得知,这次学校团体报名的名额还没报满 ...

  3. 第十八次CSP认证游记 | 2019.12.15

    CSP认证的考试是Haogod介绍的,取得一定成绩之后能有机会参加CCSP的分赛区和全国决赛.这次来参加认证要感谢老师的奔走为我们申请学校的报销,虽然最终因为这不是比赛所以报名费和差旅费下不来,但是老 ...

  4. CCF CSP认证考试在线评测系统

    关于 CCF CSP 认证考试在线评测系统 CCF CSP 认证考试简介 CCF 是中国计算机学会的简称.CCF 计算机软件能力认证(简称 CCF CSP 认证考试)是 CCF 于 2014 年推出, ...

  5. 第16次CCF CSP认证-第5题-317 号子任务(subtask317)-图论最短路径

    [题目背景]“你在平原上走着走着,突然迎面遇到一堵墙,这墙向上无限高,向下无限深,向左无限远,向右无限远,这墙是什么?”——<流浪地球>原著我们带着地球去流浪了,为了处理流浪过程中可能会发 ...

  6. CCF CSP认证考试试题

    1. 201803-1 跳一跳 试题编号: 201803-1 试题名称: 跳一跳 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 近来,跳一跳这款小游戏风靡全国,受到不少玩家的 ...

  7. CCF计算机职业资格认证考试题解

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF计算机职业资格认证考试题解 CCF计算机软件能力认证(简称CCF CSP认证)是CCF计算机职业资格认证系 ...

  8. CSM(Certified Scrum Master) 敏捷认证是什么?

    Scrum 是用于开发和持续支持复杂产品的一个框架.Scrum 基于试验性过程控制理论,借鉴了精益思想.时间盒.模块化设计等,并完整地体现了敏捷宣言和敏捷原则.Scrum 采用一种迭代.增量式的方法来 ...

  9. CCF CSP/CCSP报名费优惠的方法以及常见疑问

    目录 1. 本文地址 2. 认证作用 2.1. 高校认可 2.2. 赛事认可 2.3. 企业认可 3. 报名费价格及获取优惠的方法 3.1. CCF CSP 3.2. CCF CCSP 4. 语言与I ...

随机推荐

  1. iOS sqlite ORM框架-LKDBHelper

    LKDBHelper 一个sqlite ORM(全自动操作数据库)框架. 线程安全.不再担心递归锁死的问题 安装要求 iOS 4.3+ 仅支持 ARC FMDB 添加到你的项目 如果你使用 Cocoa ...

  2. Thymeleaf对象的使用:日期对象

    Thymeleaf在模板中使用 #dates 或 #calendars 两个对象来处理日期,这两个对象大部分类似. 开发环境:IntelliJ IDEA 2019.2.2Spring Boot版本:2 ...

  3. Callable实现JAVA多线程

    最近项目用到一个功能需要实现多线程分发任务且需要任务的返回值,之前一直都是实现Runnable接口,但里面的run方法是返回void的.后来在网上查了下JAVA1.5开始就有了Callable. 下面 ...

  4. 利用Flask中的werkzeug.security模块加密

    1.这种加密方式的原理:加密时混入一段"随机"字符串(盐值)再进行哈希加密.即使 密码相同,如果盐值不同,那么哈希值也是不一样的.现在网站开发中主要是运 用这种加密方法. 2.这个 ...

  5. redis在centos7下安装(源码编译)

    下载 地址:http://www.redis.cn/download.html 下载稳定版本 把安装包上传到服务器 linux下安装 解压 进入解压后的目录,编译 创建目录,安装并指定目录 修改配置 ...

  6. 手动更新了packages.config Nuget配置文件,自动引用dll

    通过Google查询到:http://stackoverflow.com/questions/6876732/how-do-i-get-nuget-to-install-update-all-the- ...

  7. [ Python入门教程 ] Python字典数据类型及基本操作

    字典是Python中重要的数据类型,字典是由"键-值"对组成的集合,"键-值"对之间用逗号隔开,包含在一对花括号中.字典中的"值"通过&qu ...

  8. thinkphp5.1单模块设置

    thinkphp5.1单模块 1. // 是否支持多模块'app_multi_module' => false, // 自动搜索控制器'controller_auto_search' => ...

  9. PHP面试常考之设计模式——建造者模式

    建造者模式 介绍 建造者模式又名生成器模式,是一种对象构建模式.它可以将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象. 建造者模式是一步一步创建 ...

  10. 通过组件实现相同group下字符串拼接

    实现效果 组件处理流程如下:         1 使用Sorter组件对ColA进行排序       2 使用expression组件进行如下配置 3 使用aggregate组件进行如下配置 ColA ...