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. linux配置sphinx

    1. 配置索引 cd /usr/local/sphinx/etc/ cp sphinx.conf.dist sphinx.conf //备份配置文件,防止改错 vim sphinx.conf 配置文件 ...

  2. 【JEECG技术文档】JEECG 组织机构导入V3.7

    1.功能介绍 组织机构导入 提供组织机构模版导入功能,使用户更快速的创建组织机构 要使用组织机构导入功能需要完成以下步骤: 1. 下载模版excel 2. 填写组织机构信息 3. 点击导入-选择文件- ...

  3. 本地项目 共享 到github仓库

    一.安装git客户端 Window下安装Git客户端. 二.配置Intellij idea中的Git/ GitHub 选择Github,填写Host.Login和Password,然后Test是否成功 ...

  4. js中实现cookie的增删改查(document.cookie的使用详情)

    一.设置cookie的值 1.每个cookie都是一个名称/值对,名称/值对用等号连接,并将该名称/值对赋值给document.cookie即可.如:document.cookie="id= ...

  5. HTML Tags

    While some tags have a very specific purpose, such as image and video tags, most tags are used to de ...

  6. php中的错误和异常

    总结: php错误不会抛出异常,因此不能被catch,但会根据配置写入日志文件或者输出到浏览器,所以可以通过日志文件查看错误 php异常都必须自己抛出,并通过catch捕捉.SQL语句执行的错误好像可 ...

  7. linux 时间相关的一些总结

    仅作为内核代码中时间管理模块的笔记,3.10内核,很乱,不喜勿喷. 先有time,后有timer. 常用的time结构有哪些?除了大名鼎鼎的jiffies和jiffies64之外,还有常用的一些结构如 ...

  8. Ajax 学习 第二篇

    XMLHttpRequest发送请求 open(method,url,async) 解释 method:do/post,不区分大小写 URL:相对地址 文档地址 async:默认为TRUE 即异步 F ...

  9. hexo发表博文

    3.4创建博客文章与发布 在hexo 目录下终端命令: $ hexo new '文件名' //会在source/_posts创建一个文件名.md文件 这就可以使用markdown编辑器开始写自己的博客 ...

  10. C++ 关于 CMFCPropertyGridCtrl 的使用方法 之一 (原创)

    题外话: 最近在写一个重要的程序,想做的更灵活一些,于是想采用属于对话框的形式,如图所示 但查了好几本大部门的C++及MFC的书,还有很多的网上的资料,这方面的介绍实在是少之又少.不过,好在VS201 ...