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. filter map reduce函数的使用

    #filter("处理逻辑","可迭代对象") 把可迭代对象依次处理逻辑处理,如果值为真就返回值,值为假就不返回; li = ['testA','yerA',' ...

  2. 功能测试-UI测试思考点

    界面是否美观 元素大小 界面元素是否对齐方式统一 界面字体属性是否正确 界面链接及触发动作( 链接的地址是否正确,不允许存在死链的情况 链接打开方式,当前页面还是新开页面 鼠标点击后的颜色是否美观,不 ...

  3. microsoft visual c++ 14.0 is required问题解决办法

    方法有两个: 1.绕过pip,手动下载包 2.升级vc 详情参考:https://blog.csdn.net/amoscn/article/details/78215641

  4. PowerDesigner 把Comment写到name中 和把name写到Comment中 pd7以后版本可用

    在使用PowerDesigner对数据库进行概念模型和物理模型设计时,一般在NAME或Comment中写中文,在Code中写英文.Name用来显 示,Code在代码中使用,但Comment中的文字会保 ...

  5. stage.focus后 有黄色边框怎么去掉

    stage.stageFocusRect = false; stage.focus=niao; 必须先设为false

  6. How to start a VirtualBox VM headless in Windows 10

    If you wanted to start a VirtualBox VM headless (no UI) in the past, you needed additional tools.  I ...

  7. ueditor修改工具栏固定位置和显示空白div

    ueditor.all.js

  8. Django - cookies 会话跟踪技术

    一.HTTP协议的无状态保存 两次请求之间没有关联 会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应 2.会话路径技术使用Cookie或session完成 我们知道HTTP ...

  9. 一例对一个或多个实体的验证失败。有关详细信息,请参阅“EntityValidationErrors”属性的解决

    这个问题相信只要是做MVC的,都碰到过,也都知道错误的原因,就是触发了定义的实例字段校验规则.比如定义的不为空,但是为空了,或者定义的字段长度为50,但是超过50了. 可是有时虽然知道是这样,但是具体 ...

  10. C++复习:C++的类型转换

    C++的类型转换 1 类型转换名称和语法 C风格的强制类型转换(Type Cast)很简单,不管什么类型的转换统统是: TYPE b = (TYPE)a C++风格的类型转换提供了4种类型转换操作符来 ...