【纪中受难记】——Day15:今晚吃烧烤(最后吃了火锅)
明天又有假放,考的怎样无所谓了。
40/20/20
【NOIP2013模拟联考3】库特的向量(code) (Standard IO)
Time Remaining: 00:00:00
Description
终于,她们获得了一次机会。机智的库特利用弹道学、密码学、宇宙学的知识设计出了一个密室,可以让进入的人无法从内部打开出口。库特设计密码的过程很奇葩,是由两个用整数坐标表示的n 维向量导出的。神奇的是,对于这两个向量中的任意一个,无论如何将它的坐标打乱(例如(a1,a2,a3)变成(a3,a1,a2)),打乱后的数量积都不会比原来的两个向量的数量积小。而库特就把原来的两个向量的数量积作为了密码。现在她们只用把恭介引入就可以了。但是,好事多磨,由于她们的粗心大意,在测试密室的时候不小心把自己给关了进去,而且还带走了密码纸。在外面的铃只找到了库特写着两个打乱后的向量的草稿。哇呼~能不能解救这些萌妹子,就看你了。
Input
第2~3 行每行N 个整数,表示打乱后的两个向量(a1,a2,a3,a4…an),(b1,b2,b3,b4…bn).
Output
Sample Input
3 1 3 -5 -2 4 1
Sample Output
-25
Data Constraint
对于100%的数据 n<=1000, |ai|,|bi|<=100000
没写出这道题是我的失败。。。签到题,sort两遍乘起来即可。
#include<bits/stdc++.h> typedef long long ll; using namespace std; const int N=1e3+10; ll n,a[N],b[N]; bool cmp(ll t1,ll t2){return t1>t2; } int main(){scanf("%lld",&n);for(int i=1;i<=n;i++){scanf("%lld",&a[i]);}for(int i=1;i<=n;i++){scanf("%lld",&b[i]);}sort(a+1,a+n+1);sort(b+1,b+n+1,cmp);ll sum=0;for(int i=1;i<=n;i++){sum+=a[i]*b[i];}printf("%lld",sum);return 0; }
3456. 【NOIP2013模拟联考3】恭介的法则(rule) (Standard IO)
Description
Input
Output
Sample Input
6
Sample Output
135
Data Constraint
对于60%的数据 n<=50
对于100%的数据 n<=700000
数学不好,搞不定数论题。
具体看过程:
质因数分解+压位高精。
但是我不会压位高精,留坑待补。
3457. 【NOIP2013模拟联考3】沙耶的玩偶(doll) (Standard IO)
Description
终点的机关是一个立着的m*n 的方格棋盘,在有些格子上放了一个玩偶,而有些地方直接挖了个大坑。只有取走所有玩偶才能打开出口。但是,由于奇怪的设定,理树和沙耶不能直接触碰玩偶,他们需要操纵机器人来收集它。机器人的走法很奇怪,和国际象棋的马有点像,只不过马可以走任意方向的1*2 路线,它们只会由上往下走r*c(或c*r)的路线,不能回头。而机器人一旦经过一个有玩偶的格子,那个格子上的玩偶将被回收,并且在机器人离开时,那个格子会变成一个坑。理树可以把机器人放在任何一个有玩偶的格子上作为起点,也可以在任何一个有玩偶的格子回收机器人。机器人行走可以视为瞬移,只不过每一次设置新起点都会消耗1 时间。并且,有坑的格子不能落脚。
就在这个紧要关头,玩偶狂热爱好者的沙耶却流着口水智商归0。理树不得不转而求助你,帮忙计算出最少多少时间就能收集到所有玩偶。
Input
字符串。如果某个字符是'.',表示这个地方有一个玩偶;如果这个字符是'x',表示这个地
方是坑。
Output
Sample Input
3 3 1 2 ... .x. ...
Sample Output
4
Data Constraint
70%的数据中,1<=M<=20,1<=N<=4,1<=R,C<=3。
100%的数据中,1<=M,N<=50,1<=R,C<=10。
Hint
这道题一开始想着用状压dp,发现太难搞,正解网络流,就是个最小路径覆盖。
连边:
1.将每个状态转移连上值为1的边,注意拆点,是从旧连向新。
2.源点到能走的旧点连值为1的边,新点到汇点连值为1的边。
3.以上都要连反向边,值为0.
跑一遍最大流(二分图匹配),拿空点数减去匹配数就是最终答案。
#include <bits/stdc++.h> using namespace std; const int N = 6e5+10,inf = 1e9; int n, m, S, T, ans, d[N],ed,head[N],px[5],py[5],maxflow,ma[60][60],r,c; int tot=-1; struct edge{int w;int next;int to; }e[N]; inline void addedge(int x, int y, int z) {e[++tot].to=y;e[tot].next=head[x];e[tot].w=z;head[x]=tot; }//建图 int pos(int x,int y){return (x-1)*n+y; } inline bool bfs() {memset(d, 0, sizeof(d));queue<int> q;q.push(S);d[S] = 1;while (q.size()) {int x = q.front();q.pop();for (int i = head[x]; i!=-1; i = e[i].next) {int y = e[i].to, z = e[i].w;if (d[y] || !z) continue;q.push(y);d[y] = d[x] + 1;if (y == T) return 1;}}return 0; }int dinic(int x, int flow) {if (x == T) return flow;int rest = flow;for (int i = head[x]; i!=-1 && rest; i = e[i].next) {int y = e[i].to, z = e[i].w;if (d[y] != d[x] + 1 || !z) continue;int k = dinic(y, min(rest, z));if (!k) d[y] = 0;else {e[i].w -= k;e[i^1].w += k;rest -= k;}}return flow - rest; } void solve(){int now=0;while(bfs()){while(now=dinic(S,inf))maxflow+=now;}printf("%d",ans-maxflow); } int main() {memset(head,-1,sizeof(head));scanf("%d%d%d%d",&m,&n,&r,&c);char s[60];S=0,T=m*n*2+1;for(int i=1;i<=m;i++){scanf("%s",s);for(int j=1;j<=n;j++){if(s[j-1]=='x') ma[i][j]=1;}}px[1]=r;px[2]=r;px[3]=c;px[4]=c;py[1]=c;py[2]=-c;py[3]=r;py[4]=-r;for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(ma[i][j]) continue;addedge(S,pos(i,j),1);addedge(pos(i,j),S,0);addedge(pos(i,j)+n*m,T,1);addedge(T,pos(i,j)+m*n,0);ans++;for(int k=1;k<=4;k++){int xx=i+px[k];int yy=j+py[k];if(xx>m||yy<=0||yy>n||ma[xx][yy]) continue;addedge(pos(i,j),pos(xx,yy)+m*n,1);addedge(pos(xx,yy)+m*n,pos(i,j),0);}}}solve();return 0; }
(我不会告诉你我的二分图匹配是直接抄的)
总结:好好休息。
转载于:https://www.cnblogs.com/Nelson992770019/p/11358793.html
【纪中受难记】——Day15:今晚吃烧烤(最后吃了火锅)相关推荐
- 【纪中受难记】——Day23:受刑
一个上午都在思考人生(实际上是为不会写而发愁),想着不会写倒是没关系,下午改就可以了. 然后就很煎熬. 没交所以没有成绩. 2908. 矩阵乘法(mat) (Standard IO) Time Lim ...
- 【纪中受难记】——Day10:逐渐自闭
只写了一道题,结果可想而知. 爆零. 1035. 粉刷匠 (Standard IO) Time Limits: 5000 ms Memory Limits: 65536 KB Detailed L ...
- 【纪中受难记】——Day5: 改题好烦
讲真,今天的题真是究极烧脑. 100/0/0/36 1432. 输油管道 (Standard IO) Time Limits: 1000 ms Memory Limits: 65536 KB De ...
- 【纪中受难记】——Day20:祈祷落幕时
再考三天就可以回去了(不过回去也是颓). 10/0/0 A组题难度真不是盖的,但不排除我弱的可能性. 6310. Global warming (File IO): input:glo.in out ...
- 【纪中受难记】——Day1:没有爆零
上午考完感觉心情一般般,第二题貌似可以打表但是没打,自认为是"简单的模拟题",其他题没动. 下午出来:0/36.4/0,十分心痛. 果然,菜就是原罪. 1.游戏 Descripti ...
- 【纪中受难记】——Day2.感觉冤的慌
说实话,今天的题真的很简单. 但是我-- 50/0/0/100. 后来看看程序,发现是些很蠢的错误...还有没写的那些题,真的不难qwq 1.佳肴: Description 佳肴就是非常美味的菜的意思 ...
- 【纪中受难记】——Day4:失去梦想的咸鱼
世界上没有什么困难能阻挡我前进,除非是调试一个水题调了半个小时-- 0/40(60?)/0 3403. 数列变换 (Standard IO) Time Limits: 1000 ms Memory ...
- 【纪中受难记】——Day13:还有两天放假
逃避现实,是一种短暂的解脱. 10/0/0/0 第一题题目有误,略过. 1536. seek (Standard IO) Time Limits: 1000 ms Memory Limits: 65 ...
- 【纪中受难记】——Day11:傻逼题遇上傻逼人
事先声明,对题目并无恶意中伤,题目承受的痛苦由傻逼本人(我)来承担. 55/50/45/0 1235. 洪水 (Standard IO) Time Limits: 1000 ms Memory Li ...
最新文章
- php链接数据库地址填写ip地址,PHP使用IP地址联接MySQL数据库
- ASP.NET2.0 ObjectDataSource的使用详解(1)
- vue中渲染对象中属性时显示未定义_揭开 vue 背后的秘密(1)
- 一条查询SQL 语句是如何执行的?
- 新浪微博、腾讯微博、QQ空间、人人网、豆瓣 一键分享API
- java 数组地图绘画_Java将地图转换为数组[Snippet]
- LeetCode 1295. 统计位数为偶数的数字
- SpringBoot2.0系列(1)----初识SpringBoot
- java 怎么接收xml_Java如何提取完整的XML块
- 安装Linux系统的一些问题记载
- 数据结构C++ 栈——栈的应用
- 最新ECSHOP解闷商城系统+休闲娱乐EC购物商城源码
- 推荐几个很好的资源下载网站
- SheetJS 读取excel文件转出json
- android--手机桌面添加网址链接图标(解决方式)
- 计算机三级 信息安全技术 题纲
- weblogic安装以及异常解决方法【转】
- rac多scan-ip配置
- UDIMM、RDIMM、SODIMM区别
- OpenGL学习笔记——处理键盘输入