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】的更多相关文章

  1. Codeforces Round #160 (Div. 1) 题解【ABCD】

    Codeforces Round #160 (Div. 1) A - Maxim and Discounts 题意 给你n个折扣,m个物品,每个折扣都可以使用无限次,每次你使用第i个折扣的时候,你必须 ...

  2. Codeforces Round #177 (Div. 1) 题解【ABCD】

    Codeforces Round #177 (Div. 1) A. Polo the Penguin and Strings 题意 让你构造一个长度为n的串,且里面恰好包含k个不同字符,让你构造的字符 ...

  3. Codeforces Round #182 (Div. 1)题解【ABCD】

    Codeforces Round #182 (Div. 1)题解 A题:Yaroslav and Sequence1 题意: 给你\(2*n+1\)个元素,你每次可以进行无数种操作,每次操作必须选择其 ...

  4. 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 ...

  5. 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 ...

  6. 分治思想 特别常用 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 ...

  7. Codeforces Round #410 (Div. 2) 题解 【ABCD】

    A 题意:问你恰好修改一个字符,能不能使得字符串变成回文串 题解:显然直接for一遍,如果长度为偶数,那么不一样的必须是1个:如果长度为奇数,那么不一样的也可以是0个 #include<bits ...

  8. Codeforces Beta Round #83 (Div. 1 Only)题解【ABCD】

    Codeforces Beta Round #83 (Div. 1 Only) A. Dorm Water Supply 题意 给你一个n点m边的图,保证每个点的入度和出度最多为1 如果这个点入度为0 ...

  9. Codeforces Beta Round #69 (Div. 2 Only)

    Codeforces Beta Round #69 (Div. 2 Only) http://codeforces.com/contest/80 A #include<bits/stdc++.h ...

随机推荐

  1. 【半平面交】bzoj1038 [ZJOI2008]瞭望塔

    http://m.blog.csdn.net/blog/qpswwww/44105605 #include<cstdio> #include<cmath> #include&l ...

  2. Python3学习(1)-基础篇

    Python3学习(1)-基础篇 Python3学习(2)-中级篇 Python3学习(3)-高级篇 安装(MAC) 直接运行: brew install python3 输入:python3 --v ...

  3. Largest Rectangle in a Histogram(HDU1506)

    Largest Rectangle in a Histogram HDU1506 一道DP题: 思路:http://blog.csdn.net/qiqijianglu/article/details/ ...

  4. poj 3259 Wormholes 判断负权值回路

    Wormholes Time Limit: 2000 MS Memory Limit: 65536 KB 64-bit integer IO format: %I64d , %I64u   Java ...

  5. 【原创】注册assembly 到GAC

    http://msdn.microsoft.com/en-us/library/dkkx7f79.aspx http://stackoverflow.com/questions/2182316/how ...

  6. Java中利用MessageFormat对象实现类似C# string.Format方法格式化

    我们在写C#代码的时候常常会使用到string.Format("待格式化字符串{0},{1},....",参数1,参数2,...),来格式化字符串,特别是拼接字符的时候,这种方式使 ...

  7. Window程序的安装与部署

    步骤: 1.新建项目—选择安装与部署—安装项目或使用安装向导,再这里我用的是安装向导 2.点击确定—下一步 3.点击下一步,选择主输出 4.点击下一步,添加文件 5.点击完成 设置: 右击安装项目 出 ...

  8. [外挂1] MFC 鼠标位置设置

      a.取得窗口相对坐标  b.读出游戏窗口信息GetWindowRect c.移动鼠标指针SetCursorPos HWND gameh;//游戏窗口句柄 RECT r1;//RECT结构表示一个矩 ...

  9. little skill---ping

    一.ping简介 Ping是Windows下的一个命令,在Unix和Linux下也有这个命令. ping也属于一个通信协议,是TCP/IP协议的一部分. 利用“ping”命令可以检查网络是否连通,可以 ...

  10. Linux kernel develop -- Hello World

    hello.c: #include <linux/init.h> #include <linux/module.h> #include <linux/kernel.h&g ...