A

/*Huyyt*/
#include<bits/stdc++.h>
#define mem(a,b) memset(a,b,sizeof(a))
#define pb push_back
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
const ll LLmaxn = 2e18;
const int N = ;
int main()
{
int one = ;
int two = ;
int n;
cin >> n;
for (int i = ; i <= n; i++)
{
int now;
cin >> now;
if (now == )
{
one++;
}
else
{
two++;
}
}
if (one < two)
{
cout << one << endl;
}
else
{
cout << two + (one - two) / << endl;
}
return ;
}

B

/*Huyyt*/
#include<bits/stdc++.h>
#define mem(a,b) memset(a,b,sizeof(a))
#define pb push_back
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
const ll LLmaxn = 2e18;
const int N = ;
int month1[] = {, , , , , , , , , , , , };
int month2[];
int now[];
int m[];
int cnt = ;
bool ok(int x)
{
if (x % == )
{
return true;
}
if (x % == && x % > )
{
return true;
}
return false;
}
int main()
{
for (int i = ; i <= ; i++)
{
month2[i] = month1[i];
}
month2[] = ;
for (int i = ; i <= ; i++)
{
if (ok(i))
{
for (int j = ; j <= ; j++)
{
now[++cnt] = month2[j];
}
}
else
{
for (int j = ; j <= ; j++)
{
now[++cnt] = month1[j];
}
}
}
int n;
cin >> n;
for (int i = ; i <= n; i++)
{
cin >> m[i];
}
for (int i = ; i <= + ; i++)
{
for (int j = ; j <= n + ; j++)
{
if (j == n + )
{
cout << "Yes" << endl;
return ;
}
if (now[i + j] != m[j])
{
break;
}
}
}
cout << "No" << endl;
}

C

/* Huyyt */
#include <bits/stdc++.h>
#define mem(a,b) memset(a,b,sizeof(a))
#define mkp(a,b) make_pair(a,b)
#define pb push_back
using namespace std;
typedef long long ll;
const long long mod = 1e9 + ;
const int N = 1e6 + ;
vector<int> ans;
int main()
{
ll n;
cin >> n;
ll sum = (n + ) * n / ;
ll want = sum / ;
if (sum % )
{
cout << << endl;
for (int i = n; i >= ; i--)
{
if (i <= want)
{
ans.pb(i);
want -= i;
}
}
cout << ans.size() << " ";
for (int ch : ans)
{
cout << ch << " ";
}
cout << endl;
return ;
}
else
{
cout << << endl;
for (int i = n; i >= ; i--)
{
if (i <= want)
{
ans.pb(i);
want -= i;
}
}
cout << ans.size() << " ";
for (int ch : ans)
{
cout << ch << " ";
}
cout << endl;
return ;
}
}

D

/* Huyyt */
#include <bits/stdc++.h>
#define mem(a,b) memset(a,b,sizeof(a))
#define mkp(a,b) make_pair(a,b)
#define pb push_back
using namespace std;
typedef long long ll;
const long long mod = 1e9 + ;
const int N = 1e6 + ;
vector<int> ans;
int main()
{
ll now = ;
ll aim = ;
ll n;
cin >> n;
ll anser = ;
if (n < )
{
cout << (n - )*n / << endl;
return ;
}
while (n >= now)
{
now *= ;
aim++;
}
ll remain = ;
ll ten = ;
for (int i = ; i <= aim - ; i++)
{
remain *= ;
ten *= ;
remain += ;
}
//cout << remain << endl;
//cout << ten << endl;
ll cnt;
for (int i = ; i <= ; i++)
{
cnt = ten * i + remain;
if (n < (cnt + ) / )
{
break;
}
if (n >= cnt)
{
anser += 1LL * cnt / ;
}
else
{
anser += n + - (cnt + ) / ;
}
}
cout << anser << endl;
}

E

/* Huyyt */
#include <bits/stdc++.h>
#define mem(a,b) memset(a,b,sizeof(a))
#define mkp(a,b) make_pair(a,b)
#define pb push_back
using namespace std;
typedef long long ll;
const long long mod = 1e9 + ;
const int N = 2e5 + ;
int cnt = ;
int t1, t2;
int pre[N], Next[N], num[N], col[N];
priority_queue<pair<int, int> > que, del;
int main()
{
int anser = ;
int x;
int n;
cin >> n;
for (int i = ; i <= n; i++)
{
cin >> x;
if (x == col[cnt])
{
num[cnt]++;
}
else
{
col[++cnt] = x;
num[cnt] = ;
}
}
for (int i = ; i <= cnt; i++)
{
pre[i] = i - , Next[i] = i + ;
que.push(mkp(num[i], -i));
}
while (cnt)
{
while (!del.empty() && que.top() == del.top()) //如果区间已经被合并不存在
{
que.pop();
del.pop();
}
x = -que.top().second;
que.pop();
t1 = pre[x], t2 = Next[x];
Next[t1] = t2, pre[t2] = t1;
if (t1 && col[t1] == col[t2])
{
del.push(mkp(num[t2], -t2));
del.push(mkp(num[t1], -t1));
num[t1] += num[t2];
Next[t1] = Next[t2];
pre[Next[t2]] = t1;
que.push(mkp(num[t1], -t1));
cnt--;
}
cnt--;
anser++;
}
cout << anser << endl;
}

Codeforces 899 1-N两非空集合最小差 末尾最多9对数计算 pair/链表加优先队列最少次数清空的更多相关文章

  1. Servlet访问路径的两种方式、Servlet生命周期特点、计算服务启动后的访问次数、Get请求、Post请求

    Servlet访问路径的两种方式: 1:注解 即在Servlet里写一个@WebServlet @WebServlet("/myServlet") 2:配置web.xml < ...

  2. 根据地图上的两个点各自的x,y坐标,计算出2点之间的直线距离。显示为公里、米

    /** * calc_map_distance() , 根据地图上的两个点各自的x,y坐标,计算出2点之间的直线距离 * @param array $point_1 第1个点的x,y坐标 array( ...

  3. Codeforces 1089I - Interval-Free Permutations(析合树计数)

    Codeforces 题面传送门 & 洛谷题面传送门 首先题目中涉及排列的 interval,因此可以想到析合树.由于本蒟蒻太菜了以至于没有听过这种神仙黑科技,因此简单介绍一下这种数据结构:我 ...

  4. java 对图片的添加文字描述,以及两张图片合成一张

    最近公司一个需要,需要把商品的优惠卷分享链接,生成一个二维码然后和商品主图合成一张,并且在新合成的主图增加商品信息的描述,好了直接看合成后图片的样式 下面我就直接贴代码,首先是Contorller层 ...

  5. Codeforces 982 树边两端点计数偶数连通块 鲨鱼活动最小K最大location 扩展欧几里得方块内光线反射

    A /*Huyyt*/ #include<bits/stdc++.h> #define mem(a,b) memset(a,b,sizeof(a)) #define pb push_bac ...

  6. codeforces 上的找两人的幸运天

    Bob and Alice are often participating in various programming competitions. Like many competitive pro ...

  7. Codeforces 899 F. Letters Removing (二分、树状数组)

    题目链接:Letters Removing 题意: 给你一个长度为n的字符串,给出m次操作.每次操作给出一个l,r和一个字符c,要求删除字符串l到r之间所有的c. 题解: 看样例可以看出,这题最大的难 ...

  8. mysql两列合成一列

    update manage set mark = concat(mark,remark) select concat(mark,remark) as pp from manage

  9. Codeforces 899 C.Dividing the numbers-规律

      C. Dividing the numbers   time limit per test 1 second memory limit per test 256 megabytes input s ...

随机推荐

  1. 【C++】C++类的static 关键字理解

    转载自:ZJE_ANDY static修饰类中成员,表示类的共享数据 1.static类成员 C++primer里面说过,static类成员不像普通的类数据成员,static类数据成员独立于一切类对象 ...

  2. Web自动化测试—— Selenium+Python Windows环境搭建

    环境搭建前的准备: 1.到Python官网下载Python安装包:https://www.python.org/ 如果不能访问,可以试试下面的解决办法: a).安装VPN网络连接工具,推荐用Green ...

  3. internetwork 与 the Internet的区别

    internetwork 表示:互连网络 the Internet 表示:因特网

  4. Jenkins发布回滚方案

    Jenkins回滚可以通过每次发布从主干打tag,然后发布的时候发tag,比如tag, v1, v2,v3 如果我发布了v3,想要回滚回v2,直接在Jenkins中选择v2的tag地址重新构建就可以回 ...

  5. nodejs之express中间件cookie-parser使用

    知识点: * .domain的使用,.aaa.com的域名都共享这个cookie信息 * res.cookie(,domain:'.aaa.com'}); * .获取所有cookie,设置cookie ...

  6. ELK+Kafka

    kafka:接收java程序投递的消息的日志队列 logstash:日志解析,格式化数据为json并输出到es中 elasticsearch:实时搜索搜索引擎,存储数据 kibana:基于es的数据可 ...

  7. 【神经网络与深度学习】Caffe使用step by step:使用自己数据对已经训练好的模型进行finetuning

    在经过前面Caffe框架的搭建以及caffe基本框架的了解之后,接下来就要回到正题:使用caffe来进行模型的训练. 但如果对caffe并不是特别熟悉的话,从头开始训练一个模型会花费很多时间和精力,需 ...

  8. 20191224 Spring官方文档(启动)

    再学Spring 之前看过Spring教学视频,看过<Spring5高级编程>,但是对于Spring始终还是感觉差了一点,应该是底层没有学好,这次再学Spring,就是要将Spring底层 ...

  9. Jmeter 04 Jmeter变量的使用

    在使用jmeter进行接口测试时,我们难免会遇到需要从上下文中获取测试数据的情况,这个时候就需要引入变量了. 定义变量 添加->配置元件->用户自定义的变量 添加->配置元件-> ...

  10. 在SQL Server 中创建外键

    建外键的前提是此外键必须是另外一个表的主键. 建外键的步骤: 第一步打开要建外键表的设计器,右击选择“关系”. 然后弹出“外键关系”窗体,我们选择“添加”,然后点击“表和列规范”后面的小按钮, 就会弹 ...