博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
P1065 作业调度方案
阅读量:6708 次
发布时间:2019-06-25

本文共 1338 字,大约阅读时间需要 4 分钟。

一道傻逼模拟写了半个小时还wa了一次

我退役罢

#include 
#include
#include
#include
#include
using namespace std;const int MAXN = 20 + 5;inline int read(){ char ch = getchar(); int x = 0; while(!isdigit(ch)) ch = getchar(); while(isdigit(ch)) x = x * 10 + ch - '0', ch = getchar(); return x;}int N, M;int a[MAXN * MAXN];int idx[MAXN][MAXN], val[MAXN][MAXN];int p[MAXN], ti[MAXN];bool vis[MAXN][MAXN * MAXN];inline bool ok(int &st, int &len, int &mac) { for(int i = st; i <= st + len - 1; i++) if(vis[mac][i]) return false; for(int i = st; i <= st + len - 1; i++) vis[mac][i] = true; return true;}int main(){ // freopen("p1065.in", "r", stdin); cin>>M>>N; for(int i = 1; i <= N * M; i++) a[i] = read(); for(int i = 1; i <= N; i++) for(int j = 1; j <= M; j++) idx[i][j] = read(); for(int i = 1; i <= N; i++) for(int j = 1; j <= M; j++) val[i][j] = read(); for(int i = 1; i <= N * M; i++) { ++p[a[i]]; int &t = ti[a[i]]; while(!ok(t, val[ a[i] ][ p[a[i]] ], idx[ a[i] ][ p[a[i]] ])) ++t; t += val[ a[i] ][ p[a[i]] ]; } int ans = 0; for(int i = 1; i <= N; i++) ans = max(ans, ti[i]); printf("%d\n", ans); return 0;}

转载于:https://www.cnblogs.com/wsmrxc/p/9781806.html

你可能感兴趣的文章
Java代码简化神器-Lombok
查看>>
How do I create a List in Scala?
查看>>
lintcode:移动零
查看>>
tomcat的webappclassloader中一个奇怪的异常信息
查看>>
Java语言与C++语言的差异总结
查看>>
Semaphore实现Andoird版源代码剖析
查看>>
使用gSoap规避和改动ONVIF标准类型结构的解析
查看>>
架构设计之策略模式
查看>>
hdu 5400 Arithmetic Sequence(模拟)
查看>>
求职(2015南京站获得百度、美的集团、趋势科技、华为offer)
查看>>
压测 apache ab 初探
查看>>
设计数据结构O1 insert delete和getRandom
查看>>
视图(View)与部分视图(Partial View)之间数据传递
查看>>
漫谈程序猿系列:群星闪耀的黄金时代
查看>>
使用Spring Session做分布式会话管理
查看>>
mongodb的NUMA问题
查看>>
js进阶 12-14 jquery的事件触发函数是哪两个
查看>>
网速4M等于多少KB/S,等于多少kbps
查看>>
MySQL MERGE存储引擎 简介
查看>>
atitit。自己定义uml MOF EMF体系eclipse emf 教程o7t
查看>>