河南省第五届ACM程序设计大赛
D: 遥 控 器
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<cmath>
#include<queue>
#include<vector>
#include<map>
using namespace std;
typedef unsigned long long LL;
#define met(a,b) (memset(a,b,sizeof(a)))
const int INF = 1e9+;
const int N = ;
const int MOD = ; int a[], s, e; int Slove()
{
int i, Mintime = , shi=e/, ge=e%; if(s>e)
{
if(a[])
Mintime = min(Mintime, -(s-e));
if(a[])
Mintime = min(Mintime, s-e);
}
else if(s<e)
{
if(a[])
Mintime = min(Mintime, e-s);
if(a[])
Mintime = min(Mintime, -(e-s));
}
else
Mintime = ; if(s!=e && !a[] && !a[])
{
if(shi==)
{
if(!a[ge]) Mintime = -;
}
else
{
if(!a[]) Mintime = -;
if(!a[shi]) Mintime = -;
if(!a[ge]) Mintime = -;
}
} for(i=; i<=; i++)
{
if(i==s) continue; int sh = i/, g = i%;
if(sh== && a[g])
{
if(i>e)
{
if(a[]) ///变大
Mintime = min(Mintime, -(i-e)+);
if(a[]) ///变小
Mintime = min(Mintime, (i-e)+);
}
else if(i<e)
{
if(a[])
Mintime = min(Mintime, (e-i)+);
if(a[])
Mintime = min(Mintime, -(e-i)+);
}
else Mintime = min(Mintime, );
}
else if(a[] && a[sh] && a[g])
{
if(i>=e)
{
if(a[])
Mintime = min(Mintime, -(i-e)+);
if(a[])
Mintime = min(Mintime, (i-e)+);
}
else if(i<e)
{
if(a[])
Mintime = min(Mintime, (e-i)+);
if(a[])
Mintime = min(Mintime, -(e-i)+);
}
else Mintime = min(Mintime, );
}
} if(Mintime==)
Mintime = -;
return Mintime;
} int main()
{
int T;
scanf("%d", &T);
while(T--)
{
met(a, ); scanf("%d%d%d%d", &a[], &a[], &a[], &a[]);
scanf("%d%d%d%d", &a[], &a[], &a[], &a[]);
scanf("%d%d%d", &a[], &a[], &a[]);
scanf("%d%d", &a[], &a[]); scanf("%d%d", &s, &e); int ans = Slove(); printf("%d\n", ans);
}
return ;
}
/** */
G: Divideing Jewels (01背包) 代码写的有点丑
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<cmath>
#include<queue>
#include<vector>
#include<map>
using namespace std;
typedef unsigned long long LL;
#define met(a,b) (memset(a,b,sizeof(a)))
const int INF = 1e9+;
const int N = ;
const int MOD = ; int a[], dp[N], v[N], k; void Slove() ///重点就在于怎样的把它转化为01背包
{
int i, j;
k=; for(i=; i<=; i++)
for(j=; j<=a[i]; j++)
v[k++] = i;
k--;
} int main()
{ int iCase=; while(scanf("%d%d%d%d%d%d%d%d%d%d", &a[], &a[], &a[], &a[], &a[], &a[], &a[], &a[], &a[], &a[])!=EOF)
{
int sum=, i, j; for(i=; i<=; i++)
sum += a[i]*i; if(sum==) break; met(dp, );
met(v, ); Slove(); for(i=; i<=k; i++)
for(j=sum/; j>=v[i]; j--)
{
if(j>=v[i])
dp[j] = max(dp[j], dp[j-v[i]]+v[i]);
} if(sum% || dp[sum/]!=sum/)
printf("#%d:Can't be divided.\n\n", iCase++);
else
printf("#%d:Can be divided.\n\n", iCase++); } return ;
}
河南省第五届ACM程序设计大赛的更多相关文章
- nyoj 1238 最少换乘 (河南省第八届acm程序设计大赛)
题目1238 题目信息 执行结果 本题排行 pid=1238" style="text-decoration:none; color:rgb(55,119,188)"&g ...
- nyoj 1239 引水project (河南省第八届acm程序设计大赛)
题目1239 pid=1239" style="color:rgb(55,119,188)">题目信息 pid=1239" style="col ...
- nyoj1237 最大岛屿(河南省第八届acm程序设计大赛)
题目1237 pid=1237" style="color:rgb(55,119,188)">题目信息 执行结果 本题排行 讨论区 最大岛屿 时间限制:1000 m ...
- 河南省第四届ACM程序设计大赛
A: 序号互换 #include <cstdio> #include <cstdlib> #include <cstring> #include <algor ...
- 河南省第八届ACM程序设计大赛
A:挑战密室 #include <iostream> #include <cstdio> #include <cstring> #include <algor ...
- 河南省第八届ACM程序设计大赛总结
简单的对这次省赛做个总结:总体来说这个比赛过程中做的还算比较顺利,虽然中间多多少少遇到一些坑,正式比赛开始后,我们就开始找水题,当然了我首先把英文题目翻译了一遍,发现了一道水题,这道题目其实就是判断点 ...
- 西南科技大学第十一届ACM程序设计大赛发言稿
西南科技大学第十一届ACM程序设计大赛发言稿 各位老师.志愿者及参赛选手: 大家好,我是来自计科学院卓软1301的哈特13,很荣幸今天能站在这里代表参赛选手发言. 回想起来,我参加ACM比赛已经快两年 ...
- 第13届 广东工业大学ACM程序设计大赛 C题 平分游戏
第13届 广东工业大学ACM程序设计大赛 C题 平分游戏 题目描述 转眼间又过了一年,又有一届的师兄师姐要毕业了. 有些师兄师姐就去了景驰科技实习. 在景驰,员工是他们最宝贵的财富.只有把每一个人 ...
- 河南省第七届ACM程序设计大赛赛后总结
我们学校ACM集训开始于4月5号(清明节),5月25日在郑州解放军信息工程大学举办,集训耗时50天,但是感觉效果还行,但是也不是太好:我们也已经尽力了,虽然说只拿了个银牌,每份收获的背后,都会有辛勤的 ...
随机推荐
- MySQL root密码找回
以MySQL多实例为例,演示找回MySQL root的密码 1.关闭mysql服务 [root@mysql ~]# mysqladmin -uroot -poldboy123 -S /data/330 ...
- apache目录浏览
DocumentRoot "/Library/WebServer/Documents" <Directory "/Library/WebServer/Documen ...
- Sass开发环境搭建
一.Ruby环境下Sass的安装 a.安装Ruby 1.下载rubyinstaller安装 2.命令行或者直接使用sass gem包安装Sass. ...
- Shell学习笔记 - 环境变量配置文件(转)
一.source命令 功能:在当前bash环境下读取并执行配置文件中的命令 1. 命令格式 source 配置文件 或 . 配置文件 2. 命令示例 [root@localhost ~]# sou ...
- AJAX请求 $.post方法的使用
使用jQuery的$.post方法可以以POST形式向服务器发起AJAX请求.$.post方法是jQuery的实用工具方法. $.post方法语法 $.post(url,parameters,call ...
- Android部分调试开关
开启 GPU Render 的profiling bar: adb shell setprop debug.hwui.profile visual_bars #或visual_lines adb sh ...
- 转:C# WinForm获取 当前执行程序路径的几种方法
1.获取和设置当前目录的完全限定路径. string str = System.Environment.CurrentDirectory; Result: C:xxxxxx 2.获取启动了应用程序的可 ...
- php常用的数组函数
array_change_key_case -- 返回字符串键名全为小写或大写的数组 array_chunk -- 将一个数组分割成多个 array_combine -- 创建一个数组,用一个数组的 ...
- RedHat 6.7 Enterprise x64环境下使用RHCS部署Oracle 11g R2双机HA
环境 软硬件环境 硬件环境: 浪潮英信服务器NF570M3两台,华为OceanStor 18500存储一台,以太网交换机两台,光纤交换机两台. 软件环境: 操作系统:Redhat Enterprise ...
- python-mysqldb安装
出现错误 command 'gcc' failed with exit status 1 解决办法: yum install python-devel mysql-devel zlib-devel ...