EXAM-2018-7-24

未完成

  • [ ] G

签到水题 A J F

A:英文字母有2426个

J:注意long long

D:Transit Tree Path

我直接套了单源最短路的一个模板,有人用的是DFS,模板第一次用,记得是无向图。

#include<bits/stdc++.h>
using namespace std;
const int maxn=1e5+7;
const long long INF=1e17;
long long dist[maxn];
#define ll long long
bool vis[maxn];
struct node
{
int v,c;
node(int _v=0,int _c=0):v(_v),c(_c){}
bool operator <(const node &r) const
{
return c>r.c;
}
};
struct edge
{
ll v,cost;
edge(ll _v=0,ll _cost=0):v(_v),cost(_cost){}
};
vector<edge>str[maxn];
void dijk(int n,int start)
{
memset(vis,0,sizeof(vis));
for(int i=1;i<=n;i++) dist[i]=INF;
priority_queue<node>q;
while(!q.empty())
{
q.pop();
}
dist[start]=0;
q.push(node(start,0));
node tmp;
while(!q.empty())
{
tmp=q.top();
q.pop();
int u=tmp.v;
if(vis[u]) continue;
vis[u]=true;
for(int i=0;i<str[u].size();i++){
int v=str[tmp.v][i].v;
ll cost=str[u][i].cost;
if(!vis[v]&&dist[v]>dist[u]+cost)
{
dist[v]=dist[u]+cost;
q.push(node(v,dist[v]));
}
}
}
}
void add(int u,int v,int w)
{
str[u].push_back(edge(v,w));
}
int main()
{
int n;
scanf("%d",&n);
int a,b,c;
for(int i=0;i<n-1;i++){
scanf("%d%d%d",&a,&b,&c);
add(b,a,c);
add(a,b,c);
}
int k,q;
scanf("%d%d",&k,&q);
dijk(n,q);
for(int i=1;i<=k;i++){
scanf("%d%d",&a,&b);
printf("%lld\n",dist[a]+dist[b]);
}
return 0;
}

E Lemonade Line

完全是英语阅读理解,题目读不懂,看样例也很难看懂,其实代码很简单。

K 打地鼠游戏

单调队列,刚开始想复杂了,只要队列中有数比要插进来的数小就替换最小的

priority_queue<int, vector<int>, greater<int>>Q;

I 经营与开发

看了题解说什么正难则反一大堆,根本看不懂

终于找到一个有说服力的:

这个我对楼下做出点补充,记最终答案为ans,其实对于每个星球不管是维修还是资源型,都可以把对钻头的改变度记作一个常数k,而且k是有后效性的。我们先具一个i=4的例子,ans=wk1a1+wk1k2a2+wk1k2k3a3+wk1k2k3k4a4,即ans=w(k1a1+k1k2a2+k1k2k3a3+k1k2k3a4),进一步提公因式就是ans=w(k1(a[1]+k2(a[2]+k3(a[3]+k4a[4]))))(这叫什么数学名词来着,蒟蒻忘了),实际上对于每个a[i],a[i]前还要乘上一个符号变量t(维修+1,资源-1,不选乘0)。即ans=w(k1(t1a[1]+k2(t2a[2]+k3(t3a[3]+k4t4a[4]))))那么我们的题目就变为对每项选择最优的符号变量得出最大的答案值。照楼下的思路我们是要从最里面的括号开始推,确保每次括号里的值都最大。

这是因为我们要求的总问题就是使的w(内的值最大)。而每个阶段的决策是tia[i]+ki*(内的值)。因为后一项肯定为正,由最优子结构性质得(内的值一定是最大值)。这样以来楼下的思路就通了。

地址EXAM-2018-7-24

EXAM-2018-7-24的更多相关文章

  1. python中使用Opencv进行车牌号检测——2018.10.24

    初学Python.Opencv,想用它做个实例解决车牌号检测. 车牌号检测需要分为四个部分:1.车辆图像获取.2.车牌定位.3.车牌字符分割和4.车牌字符识别 在百度查到了车牌识别部分车牌定位和车牌字 ...

  2. China Cloud Computing Conference(2018.07.24)

    时间:2018.07.24地点:北京国家会议中心

  3. 2018.4.24 java实现8皇后算法

    import java.util.Scanner; public class Nqueens { private boolean verify(int[] arr,int i) { // TODO A ...

  4. 课堂笔记及知识点----树(2018/10/24(pm))

    树 概念:由一个或多个(n≥0)结点组成的有限集合 T, 有且仅有一个结点称为根( root), 当 n>1时,其余的结点分为 m(m≥0)个互不相交的有限集合 T1,T2, …, Tm.每个集 ...

  5. 课堂笔记及知识点----栈和队列(2018/10/24(am))

    栈: Stack<int>  xt=new Stack<int>() ; 先进后出,后进先出,水杯结构,顺序表类似 常用方法:   .pop---->出栈,弹栈     ...

  6. 2018.5.24 lvm创建pool

    在调试生产环境时遇到以下情况: 好奇心驱使下,发现是lvm的一个功能——lvm创建pool,就手动创建了相似的环境,操作截图如下: 主要命令: vgcreate -s 32M vg /dev/vdb1 ...

  7. 【资料下载区】【iCore4相关代码、资料下载地址】更新日期2018/02/24

    [iCore4相关文档][更新中...] iCore4原理图(PDF)下载iCore4引脚注释(PDF)下载iCore4机械尺寸(PDF)下载 [iCore4相关例程代码][ARM] DEMO测试程序 ...

  8. 2018.4.24 快排查找第K大

    import java.util.Arrays; /* 核心思想:利用快排思想,先假定从大到小排序,找枢纽,枢纽会把大小分开它的两边,当枢纽下标等于k时, 即分了k位在它左边或右边,也就是最大或最小的 ...

  9. 2018.4.24 flask_mail使用

    #!/flask/bin/python # -*- coding: utf-8 -*- from threading import Thread from flask import Flask fro ...

  10. EZ 2018 06 24 NOIP2018 模拟赛(二十)

    很久之前写的一套题了,由于今天的时间太多了,所以记起来就写掉算了. 这一场尽管T2写炸了,但也莫名Rank4涨了Rating.不过还是自己太菜. A. 环游世界 首先我们先排个序,想一下如果不用走回来 ...

随机推荐

  1. Idea 中的快捷键(mac)

    Mac键盘符号和修饰键说明 ⌘ Command ⇧ Shift ⌥ Option ⌃ Control ↩︎ Return/Enter ⌫ Delete ⌦ 向前删除键(Fn+Delete) ↑ 上箭头 ...

  2. LINUX文件目录存放文件说明

    /bin bin是Binary的缩写.这个目录存放着最经常使用的命令. /boot这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件. /dev dev是Device(设备) ...

  3. JavaWeb乱码问题及统一全站编码(通过Filter实现)

    1. public class CharacterFilter implements Filter { private String characterEncoding = null; FilterC ...

  4. Android如何用一个TextView显示不同颜色得字符

    最近做一个项目,需要一个字符串显示不同的颜色.当时直接想到的就是用多个TextView来拼接,但是如果字符数量多的话,这样写是非常麻烦得.而且还要增加很多控件. 后来发现一个非常方便得方法.直接看代码 ...

  5. FPGA CRC-16/XMODEM x16+x12+x5+1

    module crc_16( input clk, input [47:0]mac, input rst, input hash_enable,//哈希控制器使能位 output reg hash_c ...

  6. java线程——线程局部变量

    一,线程局部变量ThreadLocal的作用 用于实现线程内部的数据共享,既对于相同的程序代码,多个模块在同一个线程中运行时要共享一份数据,在另一个线程访问的时候,访问的由是另一份数据. 每个线程调用 ...

  7. 雅可比行列式【2】Jacobian行列式的意义

    2.1 线性变换将面积伸缩 对于一个\(\R^2\to\R^2\)的线性变换: \[ T(x,y)= \left[ \begin{array}{c} 4x-2y\\ 2x+3y \end{array} ...

  8. 配置window下python3环境

    功能介绍 整理生信小知识库,一些技巧一些知识. 昨天 以下配置环境基于window操作系统,安装python3版本为例,推荐基础版配置. !   METHOD 1 (基础版) 官网下载对应电脑版本的p ...

  9. ASP.NET ZERO 学习 JTable的使用

    View信息: @using Abp.Web.Mvc.Extensions @using MedicalSystem.Authorization @using MedicalSystem.Web.Na ...

  10. 17.3.12---xmlrpclib模块

    1----XML-RPC是一种使用xml文本的方式利用http协议传输命令和数据的rpc基址,我们用pythom的想mlrpclib模块可以让程序与其他任何语言编写的XML-RPC服务器进行数据传输 ...