[CF套题] CF-1163
CF-1163
| # | Penalty | A | B1 | B2 | C1 | C2 | D | E | F |
|---|---|---|---|---|---|---|---|---|---|
| 3 (483) | 464 | +0 0:06 | +1 01:13 | +3 01:12 | + 01:57 | + 01:56 |
A
第一个人离开时候不增加,第二个人离开时候隔一个走开
当m=0时,答案为0
n为偶数时,如果2m<=n那么答案为m,否则为n-m
n为奇数时,如果2m<=n那么答案为m,否则为n-m,可以发现奇偶是一样的
int n,m;
int main()
{
cin>>n>>m;
if(m == 0){
cout<<1<<endl;return 0;
}
else if(n == 1){
cout<<1<<endl;return 0;
}
else if(2 * m <= n){
cout<<m<<endl;
}
else cout<<n-m<<endl;
return 0;
}
B
做B题心态崩了,这到场上肯定被hack
case并不多,但一定要细心想
- 全是一种颜色
- 所有的颜色出现次数为1
- 有一个颜色出现次数为1,其他为某种同样大小的次数
- 有一个颜色出现次数为x+1,其他颜色出现次数为x
#include <stdio.h>
#include <iostream>
#include <cstdlib>
#include <cmath>
#include <cctype>
#include <string>
#include <cstring>
#include <algorithm>
#include <stack>
#include <queue>
#include <set>
#include <map>
#include <ctime>
#include <vector>
#include <fstream>
#include <list>
#include <iomanip>
#include <numeric>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
#define ms(s) memset(s, 0, sizeof(s))
const int inf = 0x3f3f3f3f;
const int N = 1e5+10;
int n,u[N],c[N],num[N],cnt;
int main()
{
cin>>n;
int res = 1;
for(int i=1;i<=n;i++){
scanf("%d",&u[i]);
if(c[u[i]] == 0){
c[u[i]] ++;
num[1]++;
cnt++;
}
else{
num[c[u[i]]] --;
c[u[i]]++;
num[c[u[i]]] ++;
}
if(num[c[u[i]]] == i)res = i;//case1
if(num[1] == i)res = i;//case2
if(i > 1 && c[u[i]] == 1 && (i-1) % (cnt-1) == 0 && num[(i-1)/(cnt-1)] == cnt-1)//case3.1
res = i;
if(num[c[u[i]]] * c[u[i]] == i-1){//case3.2
res = i;
}
if(num[c[u[i]]] == 1 && num[c[u[i]]-1] == cnt-1)res = i;
if(num[c[u[i]]] == cnt - 1 && num[c[u[i]]+1] == 1)res = i;
}
cout<<res<<endl;
return 0;
}
C
存下每条直线,平行的直线不计算到答案中
const int N = 1010;
int n;
int x[N],y[N];
map<pair<int,int> ,set<int > > mp;
int main()
{
cin>>n;
ll res = 0;
ll tot = 0;//直线总数
for(int i=1;i<=n;i++)scanf("%d%d",&x[i],&y[i]);
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(i == j)continue;
int x1 = x[i], x2 = x[j];
int y1 = y[i], y2 = y[j];
int dx = x[i] - x[j];
int dy = y[i] - y[j];
int g = __gcd(dx,dy);
dx /= g;dy /= g;
if(dx < 0 || (dx == 0 && dy < 0)){
dx = -dx;
dy = -dy;
}
int c = dx * y1 - dy * x1;//求解直线dx*y = dy * x + c
if(!mp[{dx,dy}].count(c)){//如果直线没有记录过
tot++;
mp[{dx,dy}].insert(c);
res += tot - mp[{dx,dy}].size();//tot要减去与它平行的直线
}
}
}
cout<<res<<endl;
return 0;
}
D
留坑
E
留坑
[CF套题] CF-1163的更多相关文章
- 暑期训练 CF套题
CodeForces 327A 题意:有n个数,都是0或1,然后必须执行一次操作,翻转一个区间,里面的数0变1,1变0,求最多1的数量 思路:最开始我写的最大字段和,后面好像写搓了,然后我又改成暴力, ...
- [CF套题] CF-1201
CF-1201 传送门 # = * A 500 B 1000 C 1500 D 2000 E1 2000 E2 1000 1 (2217) 1672 482 00:09 400 01:40 790 0 ...
- 做了一道cf水题
被一道cf水题卡了半天的时间,主要原因时自己不熟悉c++stl库的函数,本来一个可以用库解决的问题,我用c语言模拟了那个函数半天,结果还超时了. 题意大概就是,给定n个数,查询k次,每次查询过后,输出 ...
- B. Lost Number【CF交互题 暴力】
B. Lost Number[CF交互题 暴力] This is an interactive problem. Remember to flush your output while communi ...
- 第46套题【STL】【贪心】【递推】【BFS 图】
已经有四套题没有写博客了.今天改的比较快,就有时间写.今天这套题是用的图片的形式,传上来不好看,就自己描述吧. 第一题:单词分类 题目大意:有n个单词(n<=10000),如果两个单词中每个字母 ...
- Educational Codeforces Round 15 套题
这套题最后一题不会,然后先放一下,最后一题应该是大数据结构题 A:求连续最长严格递增的的串,O(n)简单dp #include <cstdio> #include <cstdlib& ...
- 【套题】qbxt国庆刷题班D1
Day1 事实上D1的题目还是比较简单的= =然而D1T2爆炸了就十分尴尬--错失一波键盘 看题 T1 传送门 Description 现在你手里有一个计算器,上面显示了一个数\(S\),这个计算器十 ...
- Moscow Pre-Finals Workshop 2016. Japanese School OI Team Selection. 套题详细解题报告
写在前面 谨以此篇题解致敬出题人! 真的期盼国内也能多出现一些这样质量的比赛啊.9道题中,没有一道凑数的题目,更没有码农题,任何一题拿出来都是为数不多的好题.可以说是这一年打过的题目质量最棒的五场比赛 ...
- CF 某套题 O :Grid (简单BFS)
题意: 从左上角跳到右下角最少需要多少步,跳的规则为:可以向四个方向的任意一个方向跳当前格子中的步数,若跳不到右下角输出IMPOSSIBLE. 题解: BFS搜索,注意判断边界,标记. 代码: #in ...
随机推荐
- vs code编写java
不知不觉中vs code变得非常强大了,今天小编就分享一下vs code编写java语言.其实除了java语言,还支持很多语言. 首先看下vs code欢迎页面支持哪些语言: 好家伙,支持的东西还真不 ...
- Faceto_object_programdesign
一面向对象程序设计思想 1 和面向过程关注点不同 过程: 程序执行流程和逻辑 (局部功能) 对象: 程序中的对象 (程序结构) 2 对象 现实世界中的实体和事物 可以看成是一种具有自身属性和功能的构件 ...
- 4.k8s存储之Volume、PV、PVC和StatefulSet
3.Volume 容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题.首先,当容器崩溃时,kubelet 会重启它,但是容器中的文件将丢失--容器以干净的状态(镜像最初的 ...
- 剑指offer 面试题10:斐波那契数列
题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0).n<=39 编程思想 知道斐波拉契数列的规律即可. 编程实现 class Solu ...
- kubernets之pod的标签拓展
一 标签的拓展使用 1.1 标签的作用范围不仅仅适用于pod对node以及其他类的大部分资源同样适用 k label node node01 gpu=true k是kubectl的别名形式 同样对于n ...
- luogu P2198 杀蚂蚁
题目描述 经过小FF的研究,他发现蚂蚁们每次都走同一条长度为n个单位的路线进攻, 且蚂蚁们的经过一个单位长度所需的时间为T秒.也就是说,只要小FF在条路线上布防且给蚂蚁造成沉痛伤害就能阻止蚂蚁的进军. ...
- 事件循环Event loop到底是什么
摘要:本文通过结合官方文档MDN和其他博客深入解析浏览器的事件循环机制,而NodeJS有另一套事件循环机制,不在本文讨论范围中.process.nextTick和setImmediate是NodeJS ...
- 转 3 jmeter的两种录制方法
录制1-badboy(推荐) badboy是一款自动化测试工具,它可以完成简单的功能测试和性能测试.其实它是一款独立的测试工具,只不过它录制东西导出的格式适用于jmeter,所以我们经常把jmet ...
- Jmeter函数助手大全
__BeanShell 入参:BeanShell语法的程序语句或者Bean Shell脚本文件 示例: ${__BeanShell(123*456,)}:返回56088: ${__BeanShell( ...
- DNS是如何工作的?
今天很多人都在讲域名系统和互联网作为一个整体是如何工作的,域名系统---也就是大家所熟知的DNS.不幸的是,对于天龙人和普通人来说,他们并不了解DNS到底是什么鬼.今天就来聊聊DNS,和那些想了解DN ...