SZU5
A - Couple doubi
这种题不要想复杂,直接找规律。找不出规律就打表找规律
#include <iostream>
#include <string>
#include <cstring>
#include <cstdlib>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <stack>
#include <queue>
#include <cctype>
#include <vector>
#include <iterator>
#include <set>
#include <map>
#include <sstream>
using namespace std; #define mem(a,b) memset(a,b,sizeof(a))
#define pf printf
#define sf scanf
#define spf sprintf
#define pb push_back
#define debug printf("!\n")
#define INF 10000
#define MAXN 5010
#define MAX(a,b) a>b?a:b
#define blank pf("\n")
#define LL long long
#define ALL(x) x.begin(),x.end()
#define INS(x) inserter(x,x.begin())
#define pqueue priority_queue int k,p; int main()
{
int i,j,kase=;
while(sf("%d%d",&k,&p)==)
{
if(k/(p-)%==) pf("YES\n");
else pf("NO\n");
}
}
B - ZCC Loves Codefires
贪心
#include <iostream>
#include <string>
#include <cstring>
#include <cstdlib>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <stack>
#include <queue>
#include <cctype>
#include <vector>
#include <iterator>
#include <set>
#include <map>
#include <sstream>
using namespace std; #define mem(a,b) memset(a,b,sizeof(a))
#define pf printf
#define sf scanf
#define spf sprintf
#define pb push_back
#define debug printf("!\n")
#define INF 10000
#define MAXN 5010
#define MAX(a,b) a>b?a:b
#define blank pf("\n")
#define LL long long
#define ALL(x) x.begin(),x.end()
#define INS(x) inserter(x,x.begin())
#define pqueue priority_queue int n; struct node
{
int t,a;
double f;
}p[]; int cmp(const node& x,const node& y)
{ return x.f<y.f;} int main()
{
int i,j,kase=;
while(sf("%d",&n)==)
{
for(i=;i<n;i++)
sf("%d",&p[i].t);
for(i=;i<n;i++)
{
sf("%d",&p[i].a);
p[i].f = (double)p[i].t/p[i].a;
}
sort(p,p+n,cmp); long long sumt=,res=; for(i=;i<n;i++)
{
sumt+=p[i].t;
res+=p[i].a*sumt;
}
pf("%I64d\n",res);
}
}
C - Magical Forest(HDU 4941)
双重MAP
D - Task
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <queue>
#include <vector>
#include <set>
#include <map>
typedef __int64 ll;
const int N=;
using namespace std;
struct node
{
int x,y;
}machine[N],tesk[N];
bool cmp(node a,node b)
{
if(a.x==b.x)
return a.y>b.y;
return a.x>b.x;
}
int main()
{
int n,m,i,j,k,num;
ll money;
int temp[];
while(~scanf("%d%d",&n,&m))
{
for(i=;i<n;i++)
scanf("%d%d",&machine[i].x,&machine[i].y);
for(i=;i<m;i++)
scanf("%d%d",&tesk[i].x,&tesk[i].y);
sort(machine,machine+n,cmp);
sort(tesk,tesk+m,cmp);
memset(temp,,sizeof(temp));
for(i=,j=,money=,num=;i<m;i++)
{
while(machine[j].x>=tesk[i].x&&j<n)//标记符合时间条件的机器
{
temp[machine[j].y]++;
j++;
}
for(k=tesk[i].y;k<=;k++)//判断是否有能完成测试的机器
{
if(temp[k])
{
temp[k]--;
num++;
money=money+*tesk[i].x+*tesk[i].y;
break;
}
}
}
printf("%d %I64d\n",num,money);
}
return ;
}
E - Stupid Tower Defense
dp,分析见:http://blog.csdn.net/u012860063/article/details/38520673
#include <iostream>
#include <string>
#include <cstring>
#include <cstdlib>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <stack>
#include <queue>
#include <cctype>
#include <vector>
#include <iterator>
#include <set>
#include <map>
#include <sstream>
using namespace std; #define mem(a,b) memset(a,b,sizeof(a))
#define pf printf
#define sf scanf
#define spf sprintf
#define pb push_back
#define debug printf("!\n")
#define INF 10000
#define MAXN 5010
#define MAX(a,b) a>b?a:b
#define blank pf("\n")
#define LL long long
#define ALL(x) x.begin(),x.end()
#define INS(x) inserter(x,x.begin())
#define pqueue priority_queue LL dp[][]; int main()
{
int i,j,kase=,T;
sf("%d",&T);
while(T--)
{
LL n,x,y,z,t;
sf("%I64d%I64d%I64d%I64d%I64d",&n,&x,&y,&z,&t); LL ans = n*x*t; for(i=;i<=n;i++)
{
for(j=;j<=i;j++)
{
if(j==)
dp[i][j] = dp[i-][j]+(i-)*y*t;
else
dp[i][j] = max(dp[i-][j]+(i-j-)*y*(t+z*j),
dp[i-][j-]+(i-j)*y*(t+z*(j-)));
ans = max(ans,dp[i][j]+(n-i)*(x+y*(i-j))*(t+z*j));
}
}
pf("Case #%d: %I64d\n",++kase,ans); }
}
SZU5的更多相关文章
- mysqldump备份还原mysql
本文实现在mysql 5.7 解压版为例子 1.在window上简单试下一个例子 1.使用管理员权限打开cmd命名行,并切换到mysqldump执行程序下
- 尝试Spring Data Jpa--告别CRUD
前言 说到我们的web开发架构分层中,持久层是相对底层也是相对稳定的一层,奠定好根基后,我们才能专注于业务逻辑和视图开发.而自从ORM思想蔓延开来后,全自动ORM的Hibernate和半自动ORM的M ...
随机推荐
- BZOJ 4817: [Sdoi2017]树点涂色(LCT+树剖+线段树)
题目描述 Bob有一棵 nn 个点的有根树,其中1号点是根节点.Bob在每个点上涂了颜色,并且每个点上的颜色不同. 定义一条路径的权值是:这条路径上的点(包括起点和终点)共有多少种不同的颜色. Bob ...
- selenium上传图片
在我们使用selenium的时候碰到上传图片.文件时一般都可以先定位然后直接send_keys,但是有的却不行,selenium也没有提供其它的办法,只能靠第三方软件来解决 我们要借助一个叫AutoI ...
- 为什么sudo执行命令还是会提示权限不够
安装openstack 的过程中需要执行以下命令,虽然使用了sudo,但是依然提示权限不够 $ sudo echo "deb http://ubuntu-cloud.archive.cano ...
- 2016级算法第五次上机-A.Beihang Collegiate Pronunciation Contest 2017
1065 Beihang Collegiate Pronunciation Contest 2017 思路 在字符串中不断做匹配 找到一个匹配就输出 时间复杂度\(O(n)\) ps.模式串是定长的, ...
- 题目1042:Coincidence(最长公共子序列)
问题来源 http://ac.jobdu.com/problem.php?pid=1042 问题描述 给定两个字符串,求其最长公共子序列(LCS). 问题分析 网上是在是太多这类问题的文章了,随便贴一 ...
- 各版本JDK官方下载地址
https://www.oracle.com/technetwork/java/archive-139210.html linux下JDK下载方法wget --no-check-certificate ...
- springboot pom.xml文件
pom.xml文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="h ...
- Oracle给Select结果集加锁,Skip Locked(跳过加锁行获得可以加锁的结果集)
1.通过select for update或select for update wait或select for update nowait给数据集加锁 具体实现参考select for update和 ...
- Bugfree安装与使用
第一步:下载XAMPP和bugfree http://www.bugfree.org.cn/ http://www.apachefriends.org/zh_cn/xampp.html 第二步:安装 ...
- Git学习系列之为什么选择Git?
为什么选择Git? 流行的软件版本开源管理软件,有CVS.SVN.GIT版本管理工具,Git的优势在哪里呢? Git 和 CVS.SVN不同,是一个分布式的源代码管理工具,它很强,也很快,Linux内 ...