a
【问题描述】
      你是能看到第一题的 friends 呢。
                      ——hja
    给你一个只有小括号和中括号和大括号的括号序列,问该序列是否合法。
【输入格式】
  一行一个括号序列。
【输出格式】
  如果合法,输出 OK,否则输出 Wrong。
【样例输入】
  [(])
【样例输出】
  Wrong
【数据范围与规定】
  对于70%的数据,1 ≤n≤ 100。
  对于100%的数据,1 ≤ n≤ 10000,所有单词由大写字母组成。
P100 zhxb
思路:栈维护一下。

#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
string s;
char stack[];
int top,m1,m2,m3;
int main(){
freopen("a.in","r",stdin);
freopen("a.out","w",stdout);
cin>>s;
int len=s.length();
for(int i=;i<len;i++){
if(s[i]=='(') {m1++;stack[top++]=s[i];}
if(s[i]=='[') {m2++;stack[top++]=s[i];}
if(s[i]=='{') {m3++;stack[top++]=s[i];}
else if(s[i]==')'){
if(!m1){cout<<"Wrong";return ;}
else if(stack[top-]!='('){cout<<"Wrong";return ;}
else{top--;m1--;}
}
else if(s[i]==']'){
if(!m2){cout<<"Wrong";return ;}
else if(stack[top-]!='['){cout<<"Wrong";return ;}
else {top--;m2--;}
}
else if(s[i]=='}'){
if(!m3){cout<<"Wrong";return ;}
else if(stack[top-]!='{'){cout<<"Wrong";return ;}
else {top--;m3--;}
}
}
if(top||m1||m2||m3) cout<<"Wrong";
else cout<<"OK";
}

b
【问题描述】
      你是能看到第二题的 friends 呢。
                      ——laekov
    Yjq 想要将一个长为l宽为w的矩形棺材(棺材表面绝对光滑,所以棺材可
  以任意的滑动)拖过一个 L 型墓道。
    如图所示,L 型墓道两个走廊的宽度分别是a和b,呈 90°,并且走廊的长
  度远大于?。
    现在 Hja 想知道对于给定的a,b,l,最大的?是多少,如果无论如何棺材都
  不可能通过,则输出"My poor head =("
【输入格式】
  第一行三个用空格分隔的整数a,b,l,意义如题目所示。
【输出格式】
  输出最大的可能的?,保留七位小数,如果无论如何棺材都不可能通过,则
  输出"My poor head =("。
【样例输入 1】
  2 2 1
【样例输出 1】
  1.0000000

【样例输入 2】
  2 2 2
【样例输出 2】
  2.0000000
【样例输入 3】
  2 2 3
【样例输出 3】
  1.3284271
【样例输入 4】
  2 2 6
【样例输出 4】
  My poor head =(
【数据范围与规定】
  对于100%的数据,1 ≤ a,b,l ≤ 10 4
  P100 zhxc

以下解题思路来自xxy大佬的博客

设直线解析式为 y=(-n/m)* x+n

整理,得:- n * x + m * y + n * m = 0

点(b,a)到直线的距离为:| - b * n - a * m + n * m | / L

(L : 根号下(n^2 + m^2)=L)

最优解就是 - b * n - a * m + n * m 的最大值

然后不知道为啥求了个

b * n + a * m - n *m 的最小值

单峰函数求最小值,三分法每次去掉大的一部分

式子最小值<0 时无解

#include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
const double eps=1e-;
int a,b,l;
double L=,R=;
double ans=0x7f7f7f7f;
double mid1,mid2,t1,t2;
double f(double n){
double m=sqrt(1.0*l*l-n-n);
if(n*m>a*n+b*m) return -;
return (b*m+a*n-n*m)/l;
}
int main(){
freopen("b.in","r",stdin);
freopen("b.out","w",stdout);
scanf("%d%d%d",&a,&b,&l);
if(a>=&&b>=){
printf("%d.0000000",l);
return ;
}
if(a>=l){
printf("%d.0000000",b);
return ;
}
if(b>=){
printf("%d.0000000",a);
return ;
}
int t=;
while(t--){
mid1=(R-L)/+L;
mid2=L+R-mid1;
t1=f(mid1);
t2=f(mid2);
if(t1<||t2<){
printf("My poor head =(");
return ;
}
if(t1<t2){
ans=min(ans,t1);
R=mid2;
}
else{
ans=min(ans,t2);
L=mid1;
}
}
printf("%.7lf",ans);
}

c
【问题描述】
      你是能看到第三题的 friends 呢。
                      ——aoao
    树是个好东西,删掉树一条边要 1 的代价,随便再加一条边有 1 的代价,求
  最小的代价把树变成环。
【输入格式】
  第一行一个整数n,代表树的点数。
  接下来n − 1行,每行两个数代表树的一条边。
【输出格式】
  一行一个整数代表答案。
【样例输入】
  4
  1 2
  2 3
  2 4
【样例输出】
  3
【数据规模与约定】
  对于30%的数据,1≤n≤10。
  对于60%的数据,1 ≤ n ≤ 1000。
  对于100%的数据,1 ≤ n ≤ 100000。

思路:贪心。

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define MAXN 100010
using namespace std;
int n,tot,ans,root;
int into[MAXN];
int to[MAXN*],net[MAXN*],head[MAXN*];
void add(int u,int v){
to[++tot]=v;net[tot]=head[u];head[u]=tot;
to[++tot]=u;net[tot]=head[v];head[v]=tot;
}
void dfs(int now,int fa){
for(int i=head[now];i;i=net[i])
if(to[i]!=fa){
dfs(to[i],now);
if(into[to[i]]>){
into[now]--;
ans+=(into[to[i]]-)*;
}
}
}
int main(){
freopen("c.in","r",stdin);
freopen("c.out","w",stdout);
scanf("%d",&n);
for(int i=;i<n;i++){
int u,v;
scanf("%d%d",&u,&v);
add(u,v);
into[u]++;
into[v]++;
}
root=;
for(int i=;i<=n;i++)
if(into[i]==){
root=i;
break;
}
dfs(root,-);
cout<<ans+;
}
/*
8
1 2
1 3
3 4
3 5
4 6
4 7
4 8
3
*/

国庆 day 3 下午的更多相关文章

  1. 国庆 day 7 下午

    思路:见博客. #include<iostream> #include<cstdio> #include<cstring> #include<algorith ...

  2. 国庆 day 2 下午

    最大值(max) Time Limit:1000ms   Memory Limit:128MB 题目描述 LYK有一本书,上面有很多有趣的OI问题.今天LYK看到了这么一道题目: 这里有一个长度为n的 ...

  3. 国庆 day 1 下午

    一道图论好题(graph) Time Limit:1000ms   Memory Limit:128MB 题目描述 LYK有一张无向图G={V,E},这张无向图有n个点m条边组成.并且这是一张带权图, ...

  4. 国庆 day 6 下午

    1.数组异或 (xorarray.pas/c/cpp) (xorarray.in/out) 时间限制:2s/空间限制:256M [题目描述] xor——异或,和 and 与or 一样,是一种重要的逻辑 ...

  5. 2018国庆YALI集训游记

    想了想,像之前那样简略地叙述题意和做法,根本没讲清楚,没有任何意义,还不如写写自己的感受. 感觉YALI真的是一所挺不错的学校吧.总是能有一机房的julao轮番吊打你,总是能有集训队的奆佬来给你出dl ...

  6. 2016.10.4初中部下午NOIP普及组比赛总结

    2016.10.4初中部下午NOIP普及组比赛总结 这次的题有些水,只是第四题有点坑. 题目: 比赛:AC+0+AC+50=250 改题:AC+AC+AC+50=350 一.Bill 满地都是水 题目 ...

  7. 票房和口碑称霸国庆档,用 Python 爬取猫眼评论区看看电影《我和我的家乡》到底有多牛

    今年的国庆档电影市场的表现还是比较强势的,两名主力<我和我的家乡>和<姜子牙>起到了很好的带头作用. <姜子牙>首日破 2 亿,一举刷新由<哪吒之魔童降世&g ...

  8. 搞了我一下午竟然是web.config少写了一个点

    Safari手机版居然有个这么愚蠢的bug,浪费了我整个下午,使尽浑身解数,国内国外网站搜索解决方案,每一行代码读了又想想了又读如此不知道多少遍,想破脑袋也想不通到底哪里出了问题,结果竟然是web.c ...

  9. System.DateUtils 3. IsPM、IsAM 判断是否为上、下午

    编译版本:Delphi XE7 function IsPM(const AValue: TDateTime): Boolean; inline;function IsAM(const AValue: ...

随机推荐

  1. js字符串日期yyyy-MM-dd转化为date示例代码

    最近遇到一个问题,就是获取表单中的日期往后台通过json方式传的时候,遇到Date.parse(str)函数在ff下报错: NAN 找了些资料,发现是由于Date.parse()函数对日期格式有要求: ...

  2. 「JavaSE 重新出发」02.01 基本数据类型

    基本数据类型 1. 整型 注意:Java 没有任何无符号(unsigned)形式的 int.long.short 或 byte 类型. 不同进制的表示形式: 十六进制数值有一个前缀0x或0X(如0xC ...

  3. HCF4094(CD4094)应用

    管脚说明和内部逻辑图 注:管脚图为HCF4094,内部逻辑图为CD4094(HCF4094内部逻辑图在datasheet不清晰,且复杂). 其中控制管脚有3个:STROBE-DATA-CLOCK,Ou ...

  4. STM8S103-STVD建立汇编代码项目

    转载:http://blog.csdn.net/u010093140/article/details/49983397 STVD本来就比较少人用,STVD汇编就更少人用了,不过STM8汇编我自己还是满 ...

  5. logging.config模块---使用配置文件管理logger

    logging配置文件 一.使用到的模块: logging.config 官方文档: https://docs.python.org/3/library/logging.config.html 非官方 ...

  6. Manacher笔记

    (其实还是回文自动机好用,毛子真是牛逼) Manacher #include<iostream> #include<cstring> #include<cstdio> ...

  7. 你可能需要了解下Laravel集合

    前言 集合通过 Illuminate\Support\Collection 进行实例,Laravel的内核大部分的参数传递都用到了集合,但这并不代表集合就是好的.Laravel作为快捷并优雅的开发框架 ...

  8. 紫书 习题8-10 UVa 1614 (贪心+结论)

    这道题我苦思冥想了一个小时, 想用背包来揍sum/2, 然后发现数据太大, 空间存不下. 然后我最后还是去看了别人的博客, 发现竟然有个神奇的结论-- 幸好我没再钻研, 感觉这个结论我肯定是想不到的- ...

  9. gRPC全局异常捕获

    gRPC全局异常捕获 引 一般的.net项目比如ASP.NET.控制台程序.Windows服务.桌面程序等都会有framework自带的全局异常捕获机制.ASP.NET的ExceptionFilter ...

  10. 【BZOJ 1212】[HNOI2004]L语言

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 因为查询的字典里面.单词的最大长度为10 所以. 如果建立一棵字典树的话. 深度最多为10: 那么可以写一个DP; 设f[i]表示1 ...