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 ...
随机推荐
- iOS plist文件创建
iOS中plist的创建,数据写入与读取功能创建一个test.plist文件,textInput作为输入,displayLabel作为显示,有一个按钮来触发保持程序triggerStorage: -( ...
- request 获取服务根目录地址
这是常用的request获取服务地址的常用方式. 源请求服务地址:http://localhost/api-server/1/forum/thread/hot_topic?sex=1 String p ...
- Win7中怎么不经确认直接删除文件至回收站
Win7中怎么不经确认直接删除文件至回收站.. 1.双击桌面回收站的图标,进入回收站后,在空白处点击右键,选择属性:2.在回收站的属性对话框,最下边,把"显示删除确认对话框”前边的√去掉,应 ...
- 忍不住记录下小型的CMDB系统
- 【转】Controllers and Routers in ASP.NET MVC 3
Controllers and Routers in ASP.NET MVC 3 ambilykk, 3 May 2011 CPOL 4.79 (23 votes) Rate: vote 1vote ...
- golang的ssh包
git clone https://github.com/golang/crypto.git,复制到 golang.org/x/ 目录下. 常常用来建立ssh连接发送一条命令,但有时需要模拟ssh客户 ...
- Here String 中不该进行分词
我们知道,在 Shell 中,一个变量在被展开后,如果它没有被双引号包围起来,那么它展开后的值还会进行一次分词(word splitting,或者叫拆词,分词这个术语已经被搜索引擎相关技术占用了)操作 ...
- [译]Atlassian Git系列教程
国庆期间把Atlassian的Git系列教程看完了.边看边翻译了相关文章. 原教程: https://www.atlassian.com/git/tutorials/ 我翻译的: git init g ...
- [Mechine Learning & Algorithm] 集成学习方法——Bagging和 Boosting
使用机器学习方法解决问题时,有较多模型可供选择. 一般的思路是先根据数据的特点,快速尝试某种模型,选定某种模型后, 再进行模型参数的选择(当然时间允许的话,可以对模型和参数进行双向选择) 因为不同的模 ...
- java中的wait(),notify(),notifyAll(),synchronized方法
wait(),notify(),notifyAll()三个方法不是Thread的方法,而是Object的方法.意味着所有对象都有这三个方法,因为每个对象都有锁,所以自然也都有操作锁的方法了.这三个方法 ...