Codeforces Beta Round #80 (Div. 2 Only)【ABCD】
Codeforces Beta Round #80 (Div. 2 Only)
A Blackjack1
题意
一共52张扑克,A代表1或者11,2-10表示自己的数字,其他都表示10
现在你已经有一个queen了,问你有多少种方案,能够得到n点
题解
其实只用考虑三种情况,都考虑一下就好了,实在不行就暴力枚举……
代码
#include<bits/stdc++.h>
using namespace std;
int n;
int main()
{
scanf("%d",&n);
if(n<=10||n>21)cout<<"0"<<endl;
else if(n==20)cout<<"15"<<endl;
else cout<<"4"<<endl;
}
B. Testing Pants for Sadness
题意
一共有n道题,每道题有a[i]个选项,每次答错这道题,就得重新答起。
现在问你最差的情况下,需要答多少次?
题解
答第i题失败,就会重新再答(i-1)次
代码
#include<bits/stdc++.h>
using namespace std;
const int maxn = 105;
int n;
int a[maxn];
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%d",&a[i]);
long long ans = 0;
for(int i=1;i<=n;i++)
ans+=1ll*(i-1)*(a[i]-1)+a[i];
cout<<ans<<endl;
}
C - Cthulhu
题意
给你一个图,问你这个图是否能够由几颗树组成,且树的根组成了简单环
题解
dfs,然后判断点的个数是否和边的个数相同,且是否是连通的就好了。
代码
#include<bits/stdc++.h>
using namespace std;
const int maxn = 106;
int vis[maxn],n,m;
int cnt = 0;
vector<int>E[maxn];
void dfs(int x){
vis[x]=1;
cnt++;
for(int i=0;i<E[x].size();i++){
int v = E[x][i];
if(!vis[v]){
dfs(v);
}
}
}
int main()
{
scanf("%d%d",&n,&m);
for(int i=1;i<=m;i++){
int a,b;
scanf("%d%d",&a,&b);
E[a].push_back(b);
E[b].push_back(a);
}
dfs(1);
if(n==m&&cnt==n)cout<<"FHTAGN!"<<endl;
else cout<<"NO"<<endl;
}
D - Russian Roulette
题意
俄罗斯转盘,长度为n的环,有k个子弹,然后挨着对着脑袋打。
你是第一个人,你希望你死的概率最小,问你怎么去设置这个子弹的位置。
第二个人会一开始随机砖圈,使得每一个位置开始都是可能的。
如果死的概率一样的话,让你找到字典序最小的。
题解
其实打个表看一看,就知道偶数就应该先把偶数位置给安上子弹,然后再把奇数位置倒着放。
但是如果总长度为奇数的话,先把最后一个位置放子弹,其他位置和偶数情况一样
代码
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long n;
long long k;
int q;
scanf("%lld%lld%d",&n,&k,&q);
if(n%2==1){
n--,k--;
}
for(int i=0;i<q;i++){
long long x;
scanf("%lld",&x);
if(x%2==0){
long long x2 = x/2;
long long num = n/2;
if(num - x2<k)
printf("X");
else
printf(".");
}else{
if(n%2==0&&x==n+1){
if(k>=0)
printf("X");
else{
printf(".");
}
continue;
}
long long num = n/2;
long long kk = k-num;
long long num2 = n-n/2;
long long num3 = (x+1)/2;
long long num4 = num2 - num3;
if(num4<kk)printf("X");
else printf(".");
}
}
}
Codeforces Beta Round #80 (Div. 2 Only)【ABCD】的更多相关文章
- Codeforces Round #160 (Div. 1) 题解【ABCD】
Codeforces Round #160 (Div. 1) A - Maxim and Discounts 题意 给你n个折扣,m个物品,每个折扣都可以使用无限次,每次你使用第i个折扣的时候,你必须 ...
- Codeforces Round #177 (Div. 1) 题解【ABCD】
Codeforces Round #177 (Div. 1) A. Polo the Penguin and Strings 题意 让你构造一个长度为n的串,且里面恰好包含k个不同字符,让你构造的字符 ...
- Codeforces Round #182 (Div. 1)题解【ABCD】
Codeforces Round #182 (Div. 1)题解 A题:Yaroslav and Sequence1 题意: 给你\(2*n+1\)个元素,你每次可以进行无数种操作,每次操作必须选择其 ...
- Codeforces Beta Round #80 (Div. 1 Only) D. Time to Raid Cowavans 离线+分块
题目链接: http://codeforces.com/contest/103/problem/D D. Time to Raid Cowavans time limit per test:4 sec ...
- Codeforces Beta Round #80 (Div. 1 Only) D. Time to Raid Cowavans 分块
D. Turtles Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/103/problem/D ...
- 分治思想 特别常用 Codeforces Beta Round #80 (Div. 1 Only) D
D. Time to Raid Cowavans time limit per test 4 seconds memory limit per test 70 megabytes input stan ...
- Codeforces Round #410 (Div. 2) 题解 【ABCD】
A 题意:问你恰好修改一个字符,能不能使得字符串变成回文串 题解:显然直接for一遍,如果长度为偶数,那么不一样的必须是1个:如果长度为奇数,那么不一样的也可以是0个 #include<bits ...
- Codeforces Beta Round #83 (Div. 1 Only)题解【ABCD】
Codeforces Beta Round #83 (Div. 1 Only) A. Dorm Water Supply 题意 给你一个n点m边的图,保证每个点的入度和出度最多为1 如果这个点入度为0 ...
- Codeforces Beta Round #69 (Div. 2 Only)
Codeforces Beta Round #69 (Div. 2 Only) http://codeforces.com/contest/80 A #include<bits/stdc++.h ...
随机推荐
- Linux下好玩的命令
1.yes命令,输出很多个y,可以用来对付选择很多y/n的应用. 2.banner命令,打印字符标题,就是用字符拼出大字来: 3.ddate命令,把日历转换成其他的什么历: 4.fortune命令,随 ...
- 平衡树模板 bzoj 3224
program t3224; var tr:array[-1..1000000,1..2] of int64; num,fa,size,quan:array[-1..1000000] of int64 ...
- PHP文件相关
<?php class FileDemo { function Test() { print __FILE__."<br/>"; //返回文件完整路径,如 E:/ ...
- mysql5.6 TIME,DATETIME,TIMESTAMP
[背景] 5.6.4以后时间类型(TIME,DATETIME,TIMESTAMP)支持微秒 DATETIME范围 :'1000-01-01 00:00:00.000000' to '9999-12-3 ...
- 不要手动StopWatch了,让BenchmarkDotNet帮你
Nuget: https://www.nuget.org/packages/BenchmarkDotNet/ Project Site: https://github.com/PerfDotNet/B ...
- 创建链接服务器(dblink)
--创建链接服务器(dblink) exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','远程服务器名或ip地址' exec sp_addlinkedsrv ...
- 安装时出现 Runtiem error (at 62:321) SWbem Locator:服务不存在,或已被标记为删除 该怎么解决?
这是由wmi服务损坏引起的错误 修复WMI服务损坏的批处理程序 将下列代码复制到一个文本文件中,改名为fixwmi.bat,运行即可.需要一段时间,请大家耐心等候. ================= ...
- [游戏学习28] MFC 时钟
>_<:这是一个时钟小程序 >_<:通过调用获得系统时间然后经过计算得出当前时间,然后再以3个圆环表示时分秒. >_<:TAO_CLOCK.h class CMyA ...
- 汇编语言hello world
DOS下: ;栈段 stack segment stack db dup(?) stack ends ;数据段 data segment szHello db 'Hello,world',0dh,0a ...
- 浅谈压缩感知(二十七):压缩感知重构算法之稀疏度自适应匹配追踪(SAMP)
主要内容: SAMP的算法流程 SAMP的MATLAB实现 一维信号的实验与结果 稀疏度K与重构成功概率关系的实验与结果 一.SAMP的算法流程 前面所述大部分OMP及其前改算法都需要已知信号的稀疏度 ...