Codeforces Round #364 (Div. 2)
这场是午夜场,发现学长们都睡了,改主意不打了,第二天起来打的virtual contest。
A题 http://codeforces.com/problemset/problem/701/A
巨水无比,好像三四分钟就直接A了。。。直接n²暴力。
#include <cstdio> #include <map> #include <queue> #include <cstring> #include <algorithm> #include <iostream> using namespace std; #define mem0(x) memset(x,0,sizeof(x)) #define mem1(x) memset(x,-1,sizeof(x)) typedef long long LL; const int INF = 0x3f3f3f3f; ],vis[]; int main() { ; scanf("%d",&n); ;i<=n;i++) scanf("%d",&a[i]),tot += a[i]; / n; mem0(vis); ;i<=n;i++) { ) continue; vis[i] = ; ;j<=n;j++) { && a[i] + a[j] == need) { printf("%d %d\n",i,j); vis[j] = ; break; } } } ; }
B题 http://codeforces.com/problemset/problem/701/B
其实挺简单的,就是一开始想错了,像不像八皇后!搞得我想错了= =。
其实是一道数学题,直接V数组和C数组记录一下行和列,推个公式直接AC。
如果说要注意什么地方的话,应该是这几个longlong.
long long tot = (LL)n * n -(LL)(rec_c + rec_r) * n + (LL)(rec_c) * rec_r;
还有一个技巧!输出答案的技巧,可以简化你的代码量,程序员总是懒的,能省一点是一点。
;i<m;i++) { printf()?'\n':' '); }
#include <cstdio> #include <map> #include <queue> #include <cstring> #include <algorithm> #include <iostream> using namespace std; #define mem0(x) memset(x,0,sizeof(x)) #define mem1(x) memset(x,-1,sizeof(x)) typedef long long LL; const int INF = 0x3f3f3f3f; +; int r[maxn],c[maxn]; LL ans[maxn]; int main() { int n,m,x,y; scanf("%d%d",&n,&m); , rec_c = ; ;i<m;i++) { scanf("%d%d",&x,&y); ) rec_r++; ) rec_c++; r[x] = ; c[y] = ; long long tot = (LL)n * n -(LL)(rec_c + rec_r) * n + (LL)(rec_c) * rec_r; ans[i] = tot; } ;i<m;i++) { printf()?'\n':' '); } ; }
C题!尺取法!一个技巧!知道这个方法的话,这道题就是模板题了,233333.在那个《挑战程序设计竞赛》这本书3.2里头。
#include <cstdio> #include <set> #include <map> #include <algorithm> #include <iostream> using namespace std; +]; int main() { int p; scanf("%d",&p); set<char>all; getchar(); ;i<p;i++) scanf("%c",&a[i]),all.insert(a[i]); int n = all.size(); , t = , num =; map<int, int>cnt; int res = p; for(;;) { while(t<p&&num<n) { ) num++; } if(num < n) break; res = min(res, t - s); ) num--; } printf("%d\n",res); ; }
D题http://codeforces.com/contest/701/problem/D
题目大意:距离为l,有n个人,人行走速度为v1,有一辆限载k人的车,车速为v2,问最短到达目的地时间。(每个人只能乘车一次)
关键点:若要时间最短,便要每个人乘车时间相同。
然后推公式就行了。
t1是行走时间,t2是乘车时间。t3是汽车空车返回的时间。
有一个重要的等式是:一个人行走的时间不仅是t1,也可以是(m-1)*(t2 + t3)。t3=t2*(v2-v1)/(v2+v1)
#include <cstdio> #include <iostream> using namespace std; int main() { double n, l, v1, v2, k, t1, t2, t; scanf("%lf%lf%lf%lf%lf", &n, &l, &v1, &v2, &k); ) / k; t2 = l / (v2 + v1 * (m - ) * ( * v2) / (v1 + v2)); t = t2 + (l - t2 * v2) / v1; printf("%.10lf\n", t); ; }
Codeforces Round #364 (Div. 2)的更多相关文章
- Codeforces Round #364 (Div.2) D:As Fast As Possible(模拟+推公式)
题目链接:http://codeforces.com/contest/701/problem/D 题意: 给出n个学生和能载k个学生的车,速度分别为v1,v2,需要走一段旅程长为l,每个学生只能搭一次 ...
- Codeforces Round #364 (Div.2) C:They Are Everywhere(双指针/尺取法)
题目链接: http://codeforces.com/contest/701/problem/C 题意: 给出一个长度为n的字符串,要我们找出最小的子字符串包含所有的不同字符. 分析: 1.尺取法, ...
- 树形dp Codeforces Round #364 (Div. 1)B
http://codeforces.com/problemset/problem/700/B 题目大意:给你一棵树,给你k个树上的点对.找到k/2个点对,使它在树上的距离最远.问,最大距离是多少? 思 ...
- Codeforces Round #364 (Div. 2) B. Cells Not Under Attack
B. Cells Not Under Attack time limit per test 2 seconds memory limit per test 256 megabytes input st ...
- Codeforces Round #364 (Div. 2) Cells Not Under Attack
Cells Not Under Attack 题意: 给出n*n的地图,有给你m个坐标,是棋子,一个棋子可以把一行一列都攻击到,在根据下面的图,就可以看出让你求阴影(即没有被攻击)的方块个数 题解: ...
- Codeforces Round #364 (Div. 2) Cards
Cards 题意: 给你n个牌,n是偶数,要你把这些牌分给n/2个人,并且让每个人的牌加起来相等. 题解: 这题我做的时候,最先想到的是模拟,之后码了一会,发现有些麻烦,就想别的方法.之后发现只要把它 ...
- Codeforces Round #364 (Div. 2)->A. Cards
A. Cards time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...
- Codeforces Round #364 (Div. 2) E. Connecting Universities
E. Connecting Universities time limit per test 3 seconds memory limit per test 256 megabytes input s ...
- Codeforces Round #364 (Div. 2) C.They Are Everywhere
C. They Are Everywhere time limit per test 2 seconds memory limit per test 256 megabytes input stand ...
随机推荐
- 【原】用css让一个容器水平垂直
这种css布局平时用的比较多,也是面试题常出的一个题,网上一搜一大丢,不过还是想自己总结一下. 这种方法比较多,本文只总结其中的几种,以便加深印象. 效果图都为这个: 方法一:position加mar ...
- 11月3日上午PHP练习《投票》
1.建立数据库 表1:DiaoYanTiMu 表2:DiaoYanXuanXiang 2.页面 页面1:投票首页 <!DOCTYPE html PUBLIC "-//W3C//DTD ...
- HDFS中JAVA API的使用
HDFS中JAVA API的使用 HDFS是一个分布式文件系统,既然是文件系统,就可以对其文件进行操作,比如说新建文件.删除文件.读取文件内容等操作.下面记录一下使用JAVA API对HDFS中的 ...
- 学习笔记——k近邻法
对新的输入实例,在训练数据集中找到与该实例最邻近的\(k\)个实例,这\(k\)个实例的多数属于某个类,就把该输入实例分给这个类. \(k\) 近邻法(\(k\)-nearest neighbor, ...
- 深入理解javascript原型和闭包(11)——执行上下文栈
继续上文的内容. 执行全局代码时,会产生一个执行上下文环境,每次调用函数都又会产生执行上下文环境.当函数调用完成时,这个上下文环境以及其中的数据都会被消除,再重新回到全局上下文环境.处于活动状态的执行 ...
- CSS百分比定义高度的冷知识
当我们给块级元素设置响应式高度的时候,例如给div设置height=50%,往往没能看到效果. 原因是百分比的大小是相对其父级元素宽高的大小,如最外层元素设置的百分比是对应屏幕而言的. 需要了解的是对 ...
- JS跨域(ajax跨域、iframe跨域)解决方法及原理详解(jsonp)
这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...
- JVM相关参数的采集
1.以-jar方式启动jar包: java -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=40100 ...
- C#高级编程笔记 2016年10月8日运算符和类型强制转换
1.checked和unchecked 运算符 C#提供了checked 和uncheckde 运算符.如果把一个代码块标记为checked, CLR就会执行溢出检查,如果发生溢出,就抛出overfl ...
- hash模块 hashlib 和hmac
hashlib模块 用于加密相关的操作,代替md5模块和sha模块,主要提供SHA1,SHA224,SSHA256,SHA384,SHA512,MD5算法 直接看代码案例: ---------md5- ...