心得:

状态极差,都怪放假,上一套的T3没改完,今天考试没有一点状态,开学恐惧症。(不恐惧作业或一调但还是很茫然)

T1能A掉实在是意外,杂题T1没做过,可能是人品守恒,(丢了钱今天才发现以后一定锁柜子QAQ),贪心不会证,凭感觉一点点瞎搞

T2和T3基本很颓很困,打了两个暴力都没调出来,恶心的题意,话说skyh口中很显然的dp式子很显然,但没有去想。

总之唯一想说的就是赶紧找到状态,即将进入高考奥赛双向战斗时期,紧张度和常规要提升

题解

T1我的做法真的很玄

输入(0,1)边权记为1,(1,1)记为3,(×,0)记为2

我们考虑一下 叶子节点和它父亲 ,如果将两个边权为1的一块处理,显然要比分别处理更优,而且要尽可能的去多处理,所以最后会剩至多一个待处理,

那这个怎么办?接着扔上去等着处理呗。

从1开始dfs,对于每个点,看它的每个儿子和相连两者的边,

分情况,这个边权k==1时,不管下面有没有剩,这个边仍要上去接着处理,(下面至多会剩一个,当然可以一块处理)

k==2的话可以接着往上考虑,

k==3想一个贪心,如果让这个边翻过来再反回去,不会比 直接处理剩的 更优,所以k==3时,直接把有剩的直接贡献到ans里就好

 #include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<queue>
#include<vector>
#define R register
using namespace std;
inline int read()
{
int f=,x=;char ch=getchar();
while(ch>''||ch<''){if(ch=='-')f=-;ch=getchar();}
while(ch<=''&&ch>=''){x=(x<<)+(x<<)+(ch^);ch=getchar();}
return f*x;
}
const int maxn=;
struct node{
int v,nxt,da;
}e[*maxn];int h[maxn],nu;
void add(int x,int y,int fl)
{
e[++nu].v=y;
e[nu].da=fl;
e[nu].nxt=h[x];
h[x]=nu;
}
int n,f[maxn],ans;
int dfs(int x,int xf)
{
int cnt=;
for(int i=h[x];i;i=e[i].nxt)
{
int y=e[i].v,k=e[i].da;
if(y==xf)continue;
int nw=dfs(y,x);
//cout<<x<<" "<<y<<" "<<k<<endl;
if(k==){cnt++;continue;}
if(!nw)continue;
if(k==)ans++;
else cnt++;
}
ans+=cnt/;
if(cnt%==)return ;
return ;
}
int main()
{
//freopen("data","r",stdin);
n=read();
int qj1=,num1=;
for(int x=;x<=n;++x)
{
int y=read(),s=read(),t=read(),fl;
if(y!=)qj1=;
if(t==)fl=;
if(s==&&t==)num1++,fl=;
if(s==&&t==)fl=;
add(x,y,fl);
add(y,x,fl);
}
if(qj1){printf("%d\n",(num1+)/);return ;}
int nw=dfs(,);
ans+=nw;
printf("%d\n",ans);
}/*
g++ 1.cpp -o 1
./1 */

考试总结 模拟28(W)的更多相关文章

  1. 考试总结 模拟27(W)

    心得:太弱了,T1问题:理解错了题,矿石可以放到同一处,,太弱了,小凯的疑惑,没什么印象T2问题:拆式子T3问题:换根dp的思想模拟9T1+T2

  2. Linux rhcsa认证考试试题模拟

    声明: 此套试题是2017年rhcsa考试题库,本题库需配合相对应的机器操作,实验环境在我的网盘下载 考试环境: server.group8.example.com 172.24.8.254/24 s ...

  3. HDU 2093 考试排名 模拟题

    解题报告: 题目描述:写一个程序给一个编程考试C++实时提交系统排名,给你的数据是题目的总数,每次错误提交罚的时间分,每位用户的姓名,然后是输入用户每题的完成情况,有一下几种情况,第一,输入只有一个正 ...

  4. 2016 10 26考试 NOIP模拟赛 杂题

    Time 7:50 AM -> 11:15 AM 感觉今天考完后,我的内心是崩溃的 试题 考试包 T1: 首先看起来是个贪心,然而,然而,看到那个100%数据为n <= 2000整个人就虚 ...

  5. NOIP模拟 28

    果然昨天和别人合照丢的脸今天都加进RP里了 T3是用了dp快速幂(???),T1,T2考试的时候把想法都写注释了. T1: #include<cstdio> using namespace ...

  6. [考试]NOIP2015模拟题2

    // 此博文为迁移而来,写于2015年7月22日,不代表本人现在的观点与看法.原始地址:http://blog.sina.com.cn/s/blog_6022c4720102w72i.html 1.总 ...

  7. NOIP 模拟 $28\; \rm 遗忘之祭仪$

    题解 \(by\;zj\varphi\) 直接贪心模拟即可,对于每个点,如果它未被覆盖,直接在这覆盖一次. 每个黑点只会被扫一次,所以总复杂度为 \(\mathcal O\rm (nm)\) Code ...

  8. [CSP-S模拟测试]:w(树上DP)

    题目背景 $\frac{1}{4}$遇到了一道水题,双完全不会做,于是去请教小$D$.小$D$看了${0.607}^2$眼就切掉了这题,嘲讽了$\frac{1}{4}$一番就离开了.于是,$\frac ...

  9. HZOI20190821模拟28题解

    题面:https://www.cnblogs.com/Juve/articles/11390839.html 所有官方正解在我的文件里 A. 虎 算法1:我们发现非关键边与黑色边去掉以后,答案就是将所 ...

随机推荐

  1. Referenced assembly does not have a strong name

    Step 1 : Run visual studio command prompt and go to directory where your DLL located. For Example my ...

  2. 线性SVM分类器实战

    1 概述 基础的理论知识参考线性SVM与Softmax分类器. 代码实现环境:python3 2 数据处理 2.1 加载数据集 将原始数据集放入"data/cifar10/"文件夹 ...

  3. 如何做系列(5)-james mail安装总结

    安装james还是比较复杂的,我们在EC2上花费了差不多一天,发现不能发送邮件到外网,后续又陆续花了几天的时间,才成功搭建james邮件服务器. 现在愿意把我们的经历分享出来,让大家参考一下. 由于项 ...

  4. [转]C#设计模式(4)-Simple Factory Pattern

    工厂模式专门负责将大量有共同接口的类实例化.工厂模式可以动态决定将哪一个类实例化,不必事先知道每次要实例化哪一个类.工厂模式有以下几种形态: 简单工厂(Simple Factory)模式 工厂方法(F ...

  5. LUOGU P2280 [HNOI2003]激光炸弹

    传送门 解题思路 二维前缀和. 代码 #include<iostream> #include<cstdio> #include<cstring> using nam ...

  6. HDU4004 二分答案

    第一道二分答案...今天看了大牛的博客,突然发现有个叫“二分枚举答案”的方法好像很牛,于是便搜了些资料..发现并不是很难,可能是我了解的只是冰山一脚罢了...加油ACMer!!!! #include& ...

  7. ArccGIS 10发布WFS服务并加载到Skyline中

    下面用ArcGIS Server 10.0将建筑物图层发布为WFS服务. (1)创建mxd文件.ArcMap打开建筑物图层,存为Buildings.mxd文件.注意:必须统一空间参考系,且要与图层的坐 ...

  8. 90 k数和 II

    原题网址:https://www.lintcode.com/problem/k-sum-ii/description 描述 Given n unique integers, number k (1&l ...

  9. python中的*args与**kwargs的含义与作用

    在定义函数的时候参数通常会使用 *args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用. *args是非关键字参数,用于元组,**kwargs是关键字参数 (字典)例如下面的代 ...

  10. vim编辑shell

      vi编辑 u撤销 i输入 dd删除游标所在的那一整行(常用) yy复制游标所在的那一行(常用) p 为将已复制的数据在光标下一行贴上 nyy n 为数字.复制光标所在的向下 n 行,例如 20yy ...