2017 Multi-University Training Contest - 2
HDU 6045
#pragma comment(linker, "/STACK:102400000,102400000")
#include <cstdio>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <cctype>
#include <map>
#include <set>
#include <queue>
#include <bitset>
#include <string>
#include <complex>
#define ll long long
#define mod 1000000007
using namespace std;
int t;
int n,x,y;
char a[],b[];
int main()
{
scanf("%d",&t);
for(int i=;i<=t;i++){
scanf("%d %d %d",&n,&x,&y);
scanf("%s",a);
scanf("%s",b);
int res=;
for(int j=;j<n;j++){
if(a[j]==b[j])
res++;
}
if(x+y<=n+res&&abs(x-y)<=n-res)
printf("Not lying\n");
else
printf("Lying\n");
}
return ;
}
HDU 6047
#pragma comment(linker, "/STACK:102400000,102400000")
#include <cstdio>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <cctype>
#include <map>
#include <set>
#include <queue>
#include <bitset>
#include <string>
#include <complex>
#define ll long long
#define mod 1000000007
using namespace std;
int n;
ll a[];
ll b[];
ll dp[];
int main()
{
while(scanf("%d",&n)!=EOF){
for(int i=;i<=n;i++)
scanf("%lld",&a[i]);
for(int i=;i<=n;i++)
scanf("%lld",&b[i]);
sort(b+,b++n);
dp[n+]=;
for(int i=n;i>=;i--)
dp[i]=max(dp[i+],a[i]-i);
ll ans=;
ll now=;
for(int i=n+;i<=*n;i++){
ll zha=max(dp[b[i-n]],now);
ans+=zha;
ans%=mod;
now=max(now,zha-i);
}
printf("%lld\n",ans);
}
return ;
}
HDU 6049
#include <iostream>
#include <cstdio>
using namespace std;
const int N=;
int f[N][N],minN[N][N],maxN[N][N],last[N];
int n,a[N];
void work()
{
int i,j,k,ii,jj;
for (i=; i<=n; i++)
{
f[i][i]=;
last[i]=i;
minN[i][i]=maxN[i][i]=a[i];
for(j=i+; j<=n; j++)
{
minN[i][j]=min(minN[i][j-],a[j]);
maxN[i][j]=max(maxN[i][j-],a[j]);
}
}
for(k=; k<=n; k++)
for(i=; i<=n-k+; i++)
{
j=i+k-;
if (maxN[i][j]-minN[i][j]!=j-i)
f[i][j]=;
else
{
if (minN[i][j]<minN[i][last[i]])f[i][j]=;
else
f[i][j]=f[i][last[i]]+f[last[i]+][j];
last[i]=j;
}
}
int ans=f[][n];
for (i=; i<=n; i++)
for (j=i; j<=n; j++)
if (f[i][j]&&(i==||f[][i-]&&minN[][i-]==))
{
jj=maxN[i][j];
if (jj==n||maxN[jj+][n]==n&&f[jj+][n])
for (ii=jj; ii>j; ii--)
if (f[ii][jj]&&minN[ii][jj]==i)
ans=max(ans,f[][i-]+f[j+][ii-]+f[jj+][n]+);
}
cout<<ans<<endl;
}
int main()
{
int T,i,j;
cin>>T;
for (i=; i<=T; i++)
{
cin>>n;
for (j=; j<=n; j++)cin>>a[j];
work();
}
return ;
}
HDU 6055
#pragma comment(linker, "/STACK:102400000,102400000")
#include <cstdio>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <cctype>
#include <map>
#include <set>
#include <queue>
#include <bitset>
#include <string>
#include <complex>
#define ll long long
#define mod 1000000007
using namespace std;
int n;
struct node
{
int x,y;
} N[];
int mp[][];
int main()
{ while(scanf("%d",&n)!=EOF)
{
memset(mp,,sizeof(mp));
for(int i=; i<=n; i++)
{
scanf("%d %d",&N[i].x,&N[i].y);
mp[N[i].x+][N[i].y+]=;
}
int ans=;
for(int i=; i<=n; i++){
for(int j=; j<=n; j++){
if(i==j)
continue;
int x,y,xx,yy;
x=N[i].x;y=N[i].y;
xx=N[j].x;yy=N[j].y;
int x1,y1,x2,y2;
int x3,y3,x4,y4;
if((x>=xx&&y>yy)){
x1=xx+abs(y-yy)+abs(x-xx);
y1=y-abs(x-xx);
x2=xx+abs(y-yy);
y2=yy-abs(x-xx);
x3=x-abs(y-yy);
y3=y+abs(x-xx);
x4=x-abs(y-yy)-abs(x-xx);
y4=yy+abs(x-xx);
if(x1+>=&&y1+>=&&x2+>=&&y2+>=&&mp[x1+][y1+]&&mp[x2+][y2+]){
ans++;
}
if(x3+>=&&y3+>=&&x4+>=&&y4+>=&&mp[x3+][y3+]&&mp[x4+][y4+]){
ans++;
}
}
}
}
printf("%d\n",ans/);
}
return ;
}
2017 Multi-University Training Contest - 2的更多相关文章
- 2017 Wuhan University Programming Contest (Online Round) Lost in WHU 矩阵快速幂 一个无向图,求从1出发到达n最多经过T条边的方法数,边可以重复经过,到达n之后不可以再离开。
/** 题目:Lost in WHU 链接:https://oj.ejq.me/problem/26 题意:一个无向图,求从1出发到达n最多经过T条边的方法数,边可以重复经过,到达n之后不可以再离开. ...
- 2017 Wuhan University Programming Contest (Online Round) C. Divide by Six 分析+模拟
/** 题目:C. Divide by Six 链接:https://oj.ejq.me/problem/24 题意:给定一个数,这个数位数达到1e5,可能存在前导0.问为了使这个数是6的倍数,且没有 ...
- 2017 Wuhan University Programming Contest (Online Round) B Color 树形dp求染色方法数
/** 题目:Color 链接:https://oj.ejq.me/problem/23 题意:给定一颗树,将树上的点最多染成m种颜色,有些节点不可以染成某些颜色.相邻节点颜色不同.求染色方法数. 思 ...
- 2017 Wuhan University Programming Contest (Online Round) D. Events,线段树区间更新+最值查询!
D. Events 线段树区间更新查询区间历史最小值,看似很简单的题意写了两天才写出来. 题意:n个数,Q次操作,每次操作对一个区间[l,r]的数同时加上C,然后输出这段区间的历史最小值. 思路:在线 ...
- 2017 Multi-University Training Contest - Team 9 1005&&HDU 6165 FFF at Valentine【强联通缩点+拓扑排序】
FFF at Valentine Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) ...
- 2017 Multi-University Training Contest - Team 9 1004&&HDU 6164 Dying Light【数学+模拟】
Dying Light Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Tot ...
- 2017 Multi-University Training Contest - Team 9 1003&&HDU 6163 CSGO【计算几何】
CSGO Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Subm ...
- 2017 Multi-University Training Contest - Team 9 1002&&HDU 6162 Ch’s gift【树链部分+线段树】
Ch’s gift Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total S ...
- 2017 Multi-University Training Contest - Team 9 1001&&HDU 6161 Big binary tree【树形dp+hash】
Big binary tree Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)T ...
- 2017 Multi-University Training Contest - Team 1 1003&&HDU 6035 Colorful Tree【树形dp】
Colorful Tree Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)T ...
随机推荐
- Redis 哨兵 Sentinel
Redis Sentinel:redis集群应用,分布式系统. 多个Sentinal进程之间通过 gossip 协议来接收主服务器是否下线的信息,通过 Raft 一致性协议来决定故障转移及转移服务 ...
- EasyUI 效果还不错的数据处理等待效果
$("#form").form("submit",{ url:url, onSubmit: function(){ parent.$.messager.prog ...
- .NET导出Excel之NPOI
前段时间研究过微软的Excel导出.table输出Excel,而它们也存在一些弊端: 1.对于微软的Excel导出存在一些弊端,如:需要安装Office软件.速度问题: 2.table输出Excel在 ...
- Python常用模块之VideoCapture
官方网址:http://videocapture.sourceforge.net/ 功能介绍: VideoCapture是Win32版Python的一个扩展,可以访问视频采集设备(如USB摄像头) ...
- Centos7 Ntp 时间服务器
Centos7 Ntp 时间服务器 安装环境 [root@m02 ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) 安装 ...
- 每天一个linux命令集
linux命令汇总,装载来自: http://www.cnblogs.com/peida/category/309012.html
- 作业 20181023-11 Alpha发布
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2283 队名:可以低头,但没必要 组长:付佳 组员:张俊余 李文涛 孙赛佳 ...
- 软件工程-东北师大站-第四次作业PSP
1.本周PSP 2.本周进度条 3.本周累计进度图 代码累计折线图 博文字数累计折线图 4.本周PSP饼状图
- “我爱淘”第二冲刺阶段Scrum站立会议8
完成任务: 完成学院分类的点击查看书籍功能,可以点击书的条目查看书的详细信息.完善界面显示,实现购买功能,优化提示,购买后就将该书从数据库中删去. 计划任务: 将书的详细信息进行完善,并且可以点击收藏 ...
- 周总结<1>
由于都不清楚周总结的格式,所以就没有写了.不过,上次听了老师的课,觉得应该要好好写写了,至少今后可以明白自己有做过什么事情,至少不会觉得自己在各个方面没有收获.不过,可能没有按照格式来写.希望老师体谅 ...