A:水.看0多还是1多就行

B:模拟二进制运算 ,,卡了好久 不应该

#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
string a,b,c;
int num[][];
int will[][];
int alen;
int blen;
int clen;
void print()
{
for(int i=;i>=;i--)
cout<<num[][i];
cout<<endl;
for(int i=;i>=;i--)
cout<<num[][i];
cout<<endl;
for(int i=;i>=;i--)
cout<<num[][i];
cout<<endl;
}
void init()
{
for(int i=;i<=alen;i++)
num[][i]=a[alen-i]-'';
for(int i=;i<=blen;i++)
num[][i]=b[blen-i]-'';
for(int i=;i<=clen;i++)
num[][i]=c[clen-i]-'';
}
int doit(int a,int b,int c)
{
int ans1;
int ans2=;
int flag=;
for(int i=;i<=;i++)
{
ans1=num[a][i]+num[b][i]+ans2;
ans2=ans1/;
ans1%=;
if(ans1!=num[c][i])
{
flag=;
break;
}
}
return flag;
}
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
cin >> a >> b >> c;
alen=a.size();
blen=b.size();
clen=c.size();
for(int i=;i<=;i++)
mem(num[i],);
init();
//print();
int flag=;
for(int i=;i<=;i++)
for(int j=;j<=;j++)
for(int w=;w<=;w++)
{
//cout<<i<<j<<w<<":";
//cout<<doit(i,j,w)<<endl;
if(doit(i,j,w)==)
{
flag=;
}
}
if(flag==)
cout<<"YES";
else
cout<<"NO";
return ;
}

E:按照要求模拟 计算不符合题中要求的个数

#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
int table[][];
int num[][];//
int ans[];
void doit(int x)
{
for(int i=;i<=;i++)
ans[i]=num[x][i];
}
int check1(int x)
{
for(int i=;i<=;i++)
for(int j=;j<=;j++)
{
doit(x);
if(ans[i]==j)
continue;
ans[i]=j;
table[table[table[ans[]][ans[]]][ans[]]][ans[]]
if(anser==)
return ;
}
return ;
}
int check2(int x)
{
for(int i=;i<=;i++)
{
doit(x);
if(ans[i]==ans[i+])
continue;
swap(ans[i],ans[i+]);
table[table[table[ans[]][ans[]]][ans[]]][ans[]]
if(anser==)
return ;
}
return ;
}
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
for(int i=;i<;i++)
for(int j=;j<;j++)
cin>>table[i][j];
for(int i=;i<;i++)
{
int now=i;
for(int j=;j>;j--)
{
num[i][j]=now%;
now/=;
}
for(int j=;j<=;j++)
ans[j]=num[i][j];
for(int j=;j<=;j++)
{
ans[j]=table[ans[j-]][ans[j]];
}
num[i][]=ans[];
}
/*for(int i=1;i<=5;i++)
cout<<num[2016][i];
cout<<endl;
for(int j=0;j<=10;j++)
{
for(int i=1;i<=5;i++)
cout<<num[j][i];
cout<<endl;
}*/
int ans=;
for(int i=;i<;i++)
if(check1(i)||check2[i])
ans++;
cout<<ans<<endl;
return ;
}

F:有N行单向流水线和对应的N个仓库 每个机器人有两个值 X Y  其中X表示坐标 Y表示在哪一个流水线下面 要求输出每个仓库能从几个流水线流入

根据题意每个仓库我们给他两个值 一个代表最上边能到达那个仓库 一个代表最下边能到达那个仓库 因为机器人只会连接相邻的两条线 所以保证l到r之间是连续的

再按机器人的坐标进行升序排序 然后依次读入 每次更新机器能碰到的两条线的l与r   (例二很有用)

#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
pair<int,int> robot[];
int ans[][];
bool cmp(pair<int,int> a,pair<int,int> b){return a.first<=b.first;}
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
int n,m;
while(scanf("%d %d",&n,&m)!=EOF)
{
for(int i=;i<=n;i++)
ans[i][]=ans[i][]=i;
for(int i=;i<=m;i++)
{
scanf("%d %d",&robot[i].first,&robot[i].second);
}
sort(robot+,robot++m,cmp);
for(int i=;i<=m;i++)
{
int aim=robot[i].second;
int ans1=min(ans[aim][],ans[aim+][]);
int ans2=max(ans[aim][],ans[aim+][]);
ans[aim][]=ans1;
ans[aim+][]=ans1;
ans[aim][]=ans2;
ans[aim+][]=ans2;
}
for(int i=;i<n;i++)
cout<<ans[i][]-ans[i][]+<<" ";
cout<<ans[n][]-ans[n][]+<<endl;
}
return ;
}

Summer training #6的更多相关文章

  1. hdu 4946 2014 Multi-University Training Contest 8

    Area of Mushroom Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  2. 2016 Multi-University Training Contests

    2016 Multi-University Training Contest 1 2016 Multi-University Training Contest 2 2016 Multi-Univers ...

  3. 2016 Multi-University Training Contest 2 D. Differencia

    Differencia Time Limit: 10000/10000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tot ...

  4. 2016 Multi-University Training Contest 1 G. Rigid Frameworks

    Rigid Frameworks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  5. ACM: Gym 101047K Training with Phuket's larvae - 思维题

     Gym 101047K Training with Phuket's larvae Time Limit:2000MS     Memory Limit:65536KB     64bit IO F ...

  6. The Solution of UESTC 2016 Summer Training #1 Div.2 Problem C

    Link http://acm.hust.edu.cn/vjudge/contest/121539#problem/C Description standard input/output After ...

  7. 2012 Multi-University Training Contest 9 / hdu4389

    2012 Multi-University Training Contest 9 / hdu4389 打巨表,实为数位dp 还不太懂 先这样放着.. 对于打表,当然我们不能直接打,这里有技巧.我们可以 ...

  8. 2014 Multi-University Training Contest 9#11

    2014 Multi-University Training Contest 9#11 Killing MonstersTime Limit: 2000/1000 MS (Java/Others)   ...

  9. 2014 Multi-University Training Contest 9#6

    2014 Multi-University Training Contest 9#6 Fast Matrix CalculationTime Limit: 2000/1000 MS (Java/Oth ...

  10. 2016 Multi-University Training Contest 1

    8/11 2016 Multi-University Training Contest 1 官方题解 老年选手历险记 最小生成树+线性期望 A Abandoned country(BH) 题意: 1. ...

随机推荐

  1. C语言递归之翻转二叉树

    题目描述 翻转一棵二叉树. 示例 输入: / \ / \ / \ 输出: / \ / \ / \ 题目要求 /** * Definition for a binary tree node. * str ...

  2. mysql数据库之单表查询多表查询

    单表查询 前期表准备 create table emp( id int not null unique auto_increment, name varchar(20) not null, sex e ...

  3. Linux文件属性改变命令chown-chgrp-chattr-lsattr实践

    chown 语法: chattr.lsattr  更改文件属性

  4. 2019牛客暑期多校训练营(第六场)-D Move

    题目链接:https://ac.nowcoder.com/acm/contest/886/D 题意:给n个物品,每个物品有一个体积值,K个箱子,问箱子的最小体积为多少可将物品全部装下. 思路:比赛时一 ...

  5. 解决mac启动springboot项目很慢的问题

    1.打开终端输入: hostname 查看电脑名称 2.输入命令修改hosts文件 sudo vi /etc/hosts 3. 在127.0.0.1和::1后边分别增加你的电脑名称 127.0.0.1 ...

  6. 基于Docker安装 GitLab

    ⒈下载镜像 本文使用GitLab 中文社区版 Docker 镜像 Docker Hub地址:https://hub.docker.com/r/beginor/gitlab-ce 如果要体验最新版的Gi ...

  7. STL algorithm 头文件下的常用函数

    algorithm 头文件下的常用函数 1. max(), min()和abs() //max(x,y)和min(x,y)分别返回x和y中的最大值和最小值,且参数必须时两个(可以是浮点数) //返回3 ...

  8. Vue.js学习笔记-script标签在head和body的区别

    初学JavaScript,项目需要没有系统学习,只能边查资料边码代码,埋下的坑不知道有多少,还是建议时间充足的情况下系统的将Javascript学习一遍 ,涉及的HTML知识也务必了解. 问题 最开始 ...

  9. Linux操作系统文档

    一 Linux操作系统概述 l为什么要学习Linux操作系统: 1.  大部分服务端都是使用Linux操作系统(Django,爬虫,科学运算等项目是部署到服务器中的) 2.  一些企业和学校(国外学校 ...

  10. LeetCode 141 ——环形链表(JAVA)

    给定一个链表,判断链表中是否有环. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始). 如果 pos 是 -1,则在该链表中没有环. 示例 1: 输入: ...