Codeforces Beta Round #59 (Div. 2)

http://codeforces.com/contest/63

A

 #include<bits/stdc++.h>
using namespace std;
#define lson l,mid,rt<<1
#define rson mid+1,r,rt<<1|1
#define sqr(x) ((x)*(x))
#define pb push_back
#define eb emplace_back
#define maxn 1000006
#define rep(k,i,j) for(int k=i;k<j;k++)
typedef long long ll;
typedef unsigned long long ull; struct sair{
string name,v;
}a[]; int main(){
#ifndef ONLINE_JUDGE
freopen("input.txt","r",stdin);
#endif
std::ios::sync_with_stdio(false);
int n;
cin>>n;
rep(i,,n+){
cin>>a[i].name>>a[i].v;
}
rep(i,,n+){
if(a[i].v=="rat"){
cout<<a[i].name<<endl;
}
}
rep(i,,n+){
if(a[i].v=="woman"||a[i].v=="child"){
cout<<a[i].name<<endl;
}
}
rep(i,,n+){
if(a[i].v=="man"){
cout<<a[i].name<<endl;
}
}
rep(i,,n+){
if(a[i].v=="captain"){
cout<<a[i].name<<endl;
}
}
}

B

暴力模拟即可

 #include<bits/stdc++.h>
using namespace std;
#define lson l,mid,rt<<1
#define rson mid+1,r,rt<<1|1
#define sqr(x) ((x)*(x))
#define pb push_back
#define eb emplace_back
#define maxn 1000006
#define rep(k,i,j) for(int k=i;k<j;k++)
typedef long long ll;
typedef unsigned long long ull; int n,k;
int a[];
int book[]; int main(){
#ifndef ONLINE_JUDGE
// freopen("input.txt","r",stdin);
#endif
std::ios::sync_with_stdio(false);
cin>>n>>k;
int ans=;
rep(i,,n+){
cin>>a[i];
}
a[]=-0x3f3f3f3f;
sort(a,a+n+);
int flag=;
while(flag){
flag=;
rep(i,,n+){
if(a[i]<k)
if(a[i]!=a[i-]){
book[i]++;
flag=;
}
}
rep(i,,n+) a[i]+=book[i],book[i]=;
sort(a,a+n+);
ans+=flag;
}
cout<<ans<<endl;
}

C

枚举1-9999的数,然后一个个判断,看看有几个符合条件

 #include<bits/stdc++.h>
using namespace std;
#define lson l,mid,rt<<1
#define rson mid+1,r,rt<<1|1
#define sqr(x) ((x)*(x))
#define pb push_back
#define eb emplace_back
#define maxn 1000006
#define rep(k,i,j) for(int k=i;k<j;k++)
typedef long long ll;
typedef unsigned long long ull; int n;
struct sair{
int a,b,c;
}q[]; int main(){
#ifndef ONLINE_JUDGE
// freopen("input.txt","r",stdin);
#endif
// std::ios::sync_with_stdio(false);
cin>>n;
rep(i,,n) {
cin>>q[i].a>>q[i].b>>q[i].c;
}
int x,y,z;
int ans,num=;
rep(i,,){
int tmp=i;
int a,b,c,d;
a=tmp%,tmp/=;
b=tmp%,tmp/=;
c=tmp%,tmp/=;
d=tmp%;
if(a==b||a==c||a==d||b==c||b==d||c==d) continue;
int flag=;
rep(j,,n){
x=,y=,z;
tmp=q[j].a;
z=tmp%;
if(a==z) x++;
if(b==z) y++;
if(c==z) y++;
if(d==z) y++;
tmp/=;
z=tmp%;
if(b==z) x++;
if(a==z) y++;
if(c==z) y++;
if(d==z) y++;
tmp/=;
z=tmp%;
if(c==z) x++;
if(b==z) y++;
if(a==z) y++;
if(d==z) y++;
tmp/=;
z=tmp%;
if(d==z) x++;
if(b==z) y++;
if(c==z) y++;
if(a==z) y++;
if(x!=q[j].b||y!=q[j].c){
flag=;
break;
}
}
if(flag){
num++;
ans=i;
}
}
if(num==) cout<<"Incorrect data"<<endl;
else if(num==) printf("%04d\n",ans);
else cout<<"Need more data"<<endl;
}

D

通过多次模拟可以发现,只要走S形即可

 #include<bits/stdc++.h>
using namespace std;
#define lson l,mid,rt<<1
#define rson mid+1,r,rt<<1|1
#define sqr(x) ((x)*(x))
#define pb push_back
#define eb emplace_back
#define maxn 1000006
#define rep(k,i,j) for(int k=i;k<j;k++)
typedef long long ll;
typedef unsigned long long ull; int field[][]; int main(){
#ifndef ONLINE_JUDGE
// freopen("input.txt","r",stdin);
#endif
std::ios::sync_with_stdio(false);
int a,b,c,d,n;
cin >> a >> b >> c >> d >> n;
for (int i=; i<; i++) {
for (int j=; j<; j++) {
field[i][j]=;
}
}
int party[]={};
for (int i=; i<n; i++) {
cin >> party[i];
}
for (int i=; i<max(b,d); i++) {
for (int j=; j<a+c; j++) {
if ((j<a&&i>=b)||(j>=a&&i>=d))field[i][j]='.';
}
}
int x=,y=,dx=;
if (((b>d)&&(d%==))||((d>b)&&(b%==))){
x=a+c-;dx=-;
}
for (int i=; i<n; i++) {
for (int j=; j<party[i]; j++) {
field[y][x]='a'+i;
if (x+dx<||x+dx>=a+c||field[y][x+dx]=='.') {
dx*=-;
y++;
} else {
x+=dx;
}
}
}
cout << "YES" << endl;
for (int i=; i<max(b,d); i++) {
for (int j=; j<a+c; j++) {
cout << char(field[i][j]);
}
cout << endl;
} }

E

一种类似博弈的题目,用状压表示每一种情况,然后搜索,找出Karlsson的必胜路径,找不到的话就是必败

 #include<bits/stdc++.h>
using namespace std;
#define lson l,mid,rt<<1
#define rson mid+1,r,rt<<1|1
#define sqr(x) ((x)*(x))
#define pb push_back
#define eb emplace_back
#define maxn 1000006
#define rep(k,i,j) for(int k=i;k<j;k++)
typedef long long ll;
typedef unsigned long long ull; const int N=,S=<<; int Next[][N]={{,,,,,,,N,,,,,N,,,,N,N,N},
{,,N,,,,N,,,,,N,,,,N,,,N},
{,,,,,,,,,,,N,,,,N,N,N,N}}; int dp[S],status=; int dfs(int now){
if(dp[now]) return dp[now];
rep(t,,){
rep(i,,N){
int tmp=now,p=i;
while(tmp&(<<p)){
tmp^=(<<p);
if(dfs(tmp)==){
return dp[now]=;
}
p=Next[t][p];
}
}
}
return dp[now]=;
} int main(){
#ifndef ONLINE_JUDGE
freopen("input.txt","r",stdin);
#endif
std::ios::sync_with_stdio(false);
char ch;
rep(i,,N){
cin>>ch;
if(ch=='.'||ch=='O'){
if(ch=='O'){
status+=(<<i);
}
}
else{
i--;
}
}
int flag=dfs(status);
if(flag==) cout<<"Karlsson"<<endl;
else cout<<"Lillebror"<<endl;
}

Codeforces Beta Round #59 (Div. 2)的更多相关文章

  1. Codeforces Beta Round #55 (Div. 2)

    Codeforces Beta Round #55 (Div. 2) http://codeforces.com/contest/59 A #include<bits/stdc++.h> ...

  2. Codeforces Beta Round #80 (Div. 2 Only)【ABCD】

    Codeforces Beta Round #80 (Div. 2 Only) A Blackjack1 题意 一共52张扑克,A代表1或者11,2-10表示自己的数字,其他都表示10 现在你已经有一 ...

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

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

  4. Codeforces Beta Round #79 (Div. 2 Only)

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

  5. Codeforces Beta Round #77 (Div. 2 Only)

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

  6. Codeforces Beta Round #76 (Div. 2 Only)

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

  7. Codeforces Beta Round #75 (Div. 2 Only)

    Codeforces Beta Round #75 (Div. 2 Only) http://codeforces.com/contest/92 A #include<iostream> ...

  8. Codeforces Beta Round #74 (Div. 2 Only)

    Codeforces Beta Round #74 (Div. 2 Only) http://codeforces.com/contest/90 A #include<iostream> ...

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

    Codeforces Beta Round #73 (Div. 2 Only) http://codeforces.com/contest/88 A 模拟 #include<bits/stdc+ ...

随机推荐

  1. Ubuntu下无法使用Secure_CRT连接服务器

    虚拟机使用 1 .指令安装了SSH服务器 sudo apt-get install openssh-server 2. 输入命令 ps | grep ssh 查看SSH服务是否开启 显示服务已开启 3 ...

  2. 利用strstr和sscanf解析GPS信息

    比如说我们要做一个GPS导航的项目,需要读取GPS模块以ASCII码的形式发送过来的数据,然后对这些数据进行处理,提取我们需要的信息.这就涉及到很多操作字符串的问题.下面就以此为例,利用strstr函 ...

  3. nohup php -f xx.php &

     nohup php -f xx.php &

  4. jquery接触初级----- 一种新奇的选择器用法

    今天看到一个新奇的jquery 选择器的用法,因为以前没有见过,所以记录下来 1.jquery 选择器: 给body添加一个元素,添加元素的时候,同时把属性和点击事件都一起进行添加 <!DOCT ...

  5. 尚硅谷redis学习1-NOSQL简介

    本系列是自己学习尚硅谷redis视频的记录,防止遗忘,供以后用到时快速回忆起来,照抄视频和资料而已,没什么技术含量,仅给自己入门了解,我是对着视频看一遍再写的,视频地址如下:尚硅谷Redis视频 背景 ...

  6. 虚拟机centos NAT模式 配置静态ip

    主要的设置有1.配置ip地址段,2.配置NAT(网关.ip地址端.子网掩码),3.修改网卡配置文件(/etc/sysconfig/network-scripts/ifcfg-eth0 ),4.重启网卡 ...

  7. Haskell语言学习笔记(86)字符串格式化与插值

    String 的格式化 Text.Printf 这个模块用来处理字符串格式化. printf :: PrintfType r => String -> r printf 用于格式化字符串, ...

  8. Linux通配符与基础正则表达式、扩展正则表达式

    在Linux命令行操作或者SHELL编程中总是容易混淆一些特殊字符的使用,比如元字符‘*’号,作为通配符匹配文件名时表示0个到无穷多个任意字符.而作为正则表达式匹配字符串时,表示重复0个到无穷多个的前 ...

  9. ie11 调试工具不能使用

    使用ie11仿真ie8测试兼容性的时候,方便调试 dom和仿真都不能用 搜索 https://www.ludou.org/win7-ie-11-f12-bug.html也有相关问题 安装补丁 64位的 ...

  10. 吴裕雄 python 机器学习-KNN算法(1)

    import numpy as np import operator as op from os import listdir def classify0(inX, dataSet, labels, ...