传送门

A - New Year and Counting Cards

•题意

有n张牌,正面有字母,反面有数字

其中元音字母$a,e,o,i,u$的另一面必须对应$0,2,4,6,8$的偶数

其他字母可以和任意数字对应

问至少检查几次可以使这n张牌合法

•思路

由于偶数可以对应任何牌,但奇数必须对应不是元音的字母,所以所有的奇数要检查

由于元音字母只可以对应偶数,其他字母可以对应任意的数,所以元音字母要检查

记录元音字母+奇数的个数

•代码

 #include<bits/stdc++.h>
using namespace std;
string s;
int main()
{
cin>>s;
int num=;
for(int i=;i<s.length();i++)
{
int a=s[i]-'';
if(((a&)&&a>&&a<)||s[i]=='a'||s[i]=='e'||s[i]=='i'||s[i]=='o'||s[i]=='u')
num++;
}
printf("%d\n",num);
}

B.New Year and Buggy Bot

•题意

给一个迷宫,其中$S$代表起点,$E$代表终点,$#$代表障碍物,#.#代表道路

$0,1,2,3$代表上下左右四个方位(顺序不一定),

给定一个序列,问按照序列走,从起点到终点一共多少种走法

•思路

对$0,1,2,3$进行全排列,第1,,2,3,4个位置分别代表上下左右

记录从起点到终点的方案数

•代码

 #include<bits/stdc++.h>
using namespace std;
char s[][];
char t[];
int a[]={,,,};
int num=;
int n,m;
struct node
{
int x,y;
}st,en;
void solve(int u,int d,int l,int r)
{
int len=strlen(t+);
int x=st.x,y=st.y;
for(int i=;i<=len;i++)
{
int now=t[i]-'';
if(now==u)
x--;
else if(now==d)
x++;
else if(now==l)
y--;
else if(now==r)
y++; if(s[x][y]=='#'||x<||x>n||y<||y>m)
return ;
if(x==en.x&&y==en.y)
{
num++;
return ;
}
}
}
int main()
{
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
scanf("%s",s[i]+);
for(int i=;i<=n;i++)
{
for(int j=;j<=m;j++)
{
if(s[i][j]=='S')
st={i,j};
if(s[i][j]=='E')
en={i,j};
}
}
scanf("%s",t+);
do
{
solve(a[],a[],a[],a[]);
}while(next_permutation(a,a+)); printf("%d\n",num);
}

C - New Year and Curling

•题意

有n个实心圆在无穷远处,给出他们圆心的横坐标

现从无穷远处按照从1到n的顺序,往x轴推圆

由于圆是实心的,所以不能相交

问推完后每个圆的圆心的y坐标

•思路

一个圆不能再推动的前提是

①推到了x轴

②与其他圆相切

与其他圆相切的时候,只要一相切就不会再动了,也就是不能绕过相切早的去和晚的相切

可以假设可以都可以推到x轴,然后挨个去找前面可以和他相切的

注意找的是y坐标最大的,也就是相切最早的那一个

y坐标可以这么计算出 $h=(2r)^{2}-d^2$ (其中$d=a[i]-a[j]$) ,于是$b[j]=b[i]+h$

•代码

 #include<bits/stdc++.h>
using namespace std;
int n,r;
int L,R;
int a[];
double b[];
int main()
{
scanf("%d%d",&n,&r);
for(int i=;i<=n;i++)
scanf("%d",a+i);
for(int i=;i<=n;i++)
{
b[i]=1.0*r;
for(int j=;j<i;j++)
{
int d=a[i]-a[j];
b[i]=max(b[i],b[j]+sqrt(*r*r-d*d));
}
}
for(int i=;i<=n;i++)
printf("%.10f ",b[i]);
}

CodeForces Goodbye 2017的更多相关文章

  1. Codeforces Goodbye 2018

    Goodbye 2018 可能是我太菜考试的时候出不了$E$ 可能是我太菜考试的时候调不出$F$ 所以转化为手速场之后手速还上不去.jpg A 模拟题意... #include <cstdio& ...

  2. Codeforces Technocup 2017 - Elimination Round 2 D. Sea Battle(贪心)

    题目链接 http://codeforces.com/contest/729/problem/D 题意:给你一个1*n的区域有a艘船,每艘船宽b,已经开了k枪都没打到,问你最少再开几枪至少能打到一艘船 ...

  3. Codeforces Technocup 2017 - Elimination Round 2 E Subordinates(贪心)

    题目链接 http://codeforces.com/contest/729/problem/E 题意:给你n个人,主管id为s,然后给你n个id,每个id上对应一个数字表示比这个人大的有几个. 最后 ...

  4. Goodbye 2017 B

    [题意]: 鲍勃编程一个机器人在2d迷宫中导航.迷宫有一些障碍.空单元格用'.'表示,其中障碍物用'#'表示.迷宫中有一个机器人.它的起始位置用字符“S”表示.这个位置没有任何障碍.迷宫中也有一个出口 ...

  5. Codeforces 908D New Year and Arbitrary Arrangement(概率DP,边界条件处理)

    题目链接  Goodbye 2017 Problem D 题意  一个字符串开始,每次有$\frac{pa}{pa+pb}$的概率在后面加一个a,$\frac{pb}{pa+pb}$的概率在后面加一个 ...

  6. CF500G / T148321 走廊巡逻

    题目链接 这题是 Codeforces Goodbye 2014 的最后一题 CF500G,只是去掉了 \(u \not= x, v \not = v\) 的条件. 官方题解感觉有很多东西说的迷迷瞪瞪 ...

  7. Codeforces Round #412 (rated, Div. 2, base on VK Cup 2017 Round 3)(A.B.C,3道暴力题,C可二分求解)

    A. Is it rated? time limit per test:2 seconds memory limit per test:256 megabytes input:standard inp ...

  8. Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)

    Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) 说一点东西: 昨天晚上$9:05$开始太不好了,我在学校学校$9:40$放 ...

  9. Codeforces Round #412 (rated, Div. 2, base on VK Cup 2017 Round 3) A B C D 水 模拟 二分 贪心

    A. Is it rated? time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...

随机推荐

  1. c++之手写strcmp

    int strcmp(const char* str1, const char*str2){ assert(str1 != NULL&&str2 != NULL); while (*s ...

  2. 程序中提醒用户进去App Store 评分 跳转 代码

           大家都知道,评论和评分是决定app在appstore中排名的重要因素,但是大部分用户下载安装APP后却不会去点评,所以添加提示用户去点评的功能是很必要的,如下是代码: 很多用户用了好软件 ...

  3. SAS信用评分之番外篇异常值的识别

    SAS信用评分之番外篇异常值的识别 今天想分享给大家的是我早期建模的时候一个识别异常值的办法,也许你在"信用风险评分卡研究"看过,但是代码只能识别一个变量,我将这个代码作了改良,但 ...

  4. 2019-8-31-dotnet-控制台-Hangfire-后台定时任务

    title author date CreateTime categories dotnet 控制台 Hangfire 后台定时任务 lindexi 2019-08-31 16:55:58 +0800 ...

  5. 【uml】之类图中的关系 标签: uml图形类 2014-11-29 09:02 1198人阅读 评论(23)

    uml早就画完了图,但是自己迟迟没有总结,因为总觉的自己把握的不到位,虽然现在也还是不到位,废话少说,上篇博客总结了用例图中的几种关系,这篇就讨论一下类图中的几种关系. 在uml的所有图中,就我目前的 ...

  6. 从入侵到变现——“黑洞”下的黑帽SEO分析

    概述 由于互联网入口流量主要被搜索引擎占据,网站在搜索引擎中的排名直接影响到市场营销效果,因此SEO服务应运而生.SEO(Search Engine Optimization)全称为搜索引擎优化,是指 ...

  7. some daily

    1. 一般div元素的background-color只覆盖到border,而其margin的颜色由外层元素的背景色决定. 2. 当设置了border-box以后,width=border+paddi ...

  8. 转载:ubuntu 下的dpkg 的用法

    dpkg是一个Debian的一个命令行工具,它可以用来安装.删除.构建和管理Debian的软件包. 下面是它的一些命令解释: 1)安装软件 命令行:dpkg -i <.deb file name ...

  9. shell不排序去重

    一条命令搞定:   awk '!a[$0]++' file 如果是第一次出现a[$0]++的值为0(假),而!a[$0]++的值就为1(真),之后就执行print $0 第二次或者两次以上的出现a[$ ...

  10. oracle函数 least(exp1,exp2,exp3,……,expn)

    [功能]返回表达式列表中值最小的一个.如果表达式类型不同,会隐含转换为第一个表达式类型. [参数]exp1……n,各类型表达式 [返回]exp1类型 [示例] SELECT least(10,32,' ...