https://codeforces.com/contest/1234/problem/A

A. Equalize Prices Again

 #include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
int n,a;
int t;
cin>>t;
ll sum = ,ans;
while(t--){
cin>>n;sum = ;
for(int i = ;i < n;++i){
cin>>a;sum+=a;
}
ans = sum/n;
if(sum%n)ans+=;
cout<<ans<<endl;
}
}

AC代码

https://codeforces.com/contest/1234/problem/B1

B1. Social Network (easy version)

https://codeforces.com/contest/1234/problem/B2

B2. Social Network (hard version)

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a;
int n ,k ,now=,fi=;
vector<ll>s;
map<ll,int>mp;
int main(){
cin>>n>>k;
for(int i = ;i < n;++i){
cin>>a;
if(mp[a]==){
mp[a]=;s.push_back(a);
if(now<k){
now++;
}
else if(now==k){
mp[s[fi]]=;fi++;
}
}
}
cout<<now<<endl;
int l =s.size()-;
int cnt=;
while(cnt<now&&l>=){
if(mp[s[l]])cnt++,cout<<s[l]<<" ";
l--;
}
cout<<endl; return ;
}

AC代码

https://codeforces.com/contest/1234/problem/C

C. Pipes

旋转一遍发现前两种其实是不同方向摆放的一种管道,后四个同理,也就是只有两个管道,一个是直流另一个会变向,然后问题就很简单了。

 #include<bits/stdc++.h>
using namespace std;
typedef long long ll; int main(){
int t,n;
cin>>t;
while(t--){
cin>>n;
string a[];cin>>a[]>>a[];
int now=,flag =;
for(int i = ;i <n;++i){
if(a[now][i]==''||a[now][i]=='')continue;
else{
now=-now;
if(a[now][i]==''||a[now][i]==''){
flag=;break;
}
}
}
if(flag==||now==)cout<<"no"<<endl;
else cout<<"yes"<<endl;
}
return ;
}

AC代码

https://codeforces.com/contest/1234/problem/D

D. Distinct Characters Queries

用线段树维护不同字母的个数orz学到了新东西,待会再看看set的做法?

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 1e5+;
int a[N],ans[];
int tree[*N][];
void build(int l,int r,int rt){
if(l==r){tree[rt][a[l]]++;return ;}
int mid=(l+r)/;
build(l,mid,rt*);
build(mid+,r,rt*+);
for(int i = ;i < ;++i)tree[rt][i]=tree[rt*][i]+tree[rt*+][i];
}
void f5(int l,int r,int rt,int x,int p,int f){
if(l==r){tree[rt][p]--;tree[rt][f]++;return ;}
int mid=(l+r)>>;
if(x<=mid)f5(l,mid,rt<<,x,p,f);
else f5(mid+,r,rt<<|,x,p,f);
for(int i = ;i < ;++i)tree[rt][i]=tree[rt<<][i]+tree[rt<<|][i];
}
void query(int l,int r,int rt,int ll,int rr){
if(r<=rr&&l>=ll){
for(int i = ;i < ;++i)ans[i]+=tree[rt][i]; return ;
}
int mid=(l+r)>>;
if(ll<=mid)query(l,mid,rt<<,ll,rr);
if(rr>mid)query(mid+,r,rt<<|,ll,rr);
}
int main()
{
ios::sync_with_stdio();
string s;cin>>s;int n = s.size();
for(int i = ;i < n;++i)a[i+]=s[i]-'a';
build(,n,);
int m;cin>>m;
while(m--){
int flag,x,l,r;char c;cin>>flag;
if(flag==){
cin>>x>>c;
f5(,n,,x,s[x-]-'a',c-'a');
s[x-]=c;
}
else{
cin>>l>>r;memset(ans,,sizeof(ans));
query(,n,,l,r);
int tot=;
for(int i = ;i < ;++i)if(ans[i])tot++;
cout<<tot<<endl;
}
}
return ;
}

AC代码

Codeforces Round #590 (Div. 3)(e、f待补的更多相关文章

  1. Codeforces Round #590 (Div. 3) Editorial

    Codeforces Round #590 (Div. 3) Editorial 题目链接 官方题解 不要因为走得太远,就忘记为什么出发! Problem A 题目大意:商店有n件商品,每件商品有不同 ...

  2. Codeforces Round #573 (Div. 1) 差F

    Codeforces Round #573 (Div. 1) E 题意:二维平面上有 n 个点,你可以放至多 m 条直线使得 (0,0) 与每个点的连线至少与一条直线相交.求原点与所有直线的距离最小值 ...

  3. Codeforces Round #575 (Div. 3) 昨天的div3 补题

    Codeforces Round #575 (Div. 3) 这个div3打的太差了,心态都崩了. B. Odd Sum Segments B 题我就想了很久,这个题目我是找的奇数的个数,因为奇数想分 ...

  4. Codeforces Round #590 (Div. 3) F

    传送门 题意: 给出一个只含前\(20\)个字符的字符串,现在可以选择一段区间进行翻转,问区间中字符各不相同时,最长长度为多少. 思路: 首先,容易将题意转换为选择两个字符各不相同的区间,然后长度相加 ...

  5. Codeforces Round #541 (Div. 2) (A~F)

    目录 Codeforces 1131 A.Sea Battle B.Draw! C.Birthday D.Gourmet choice(拓扑排序) E.String Multiplication(思路 ...

  6. Codeforces Round #532 (Div. 2):F. Ivan and Burgers(贪心+异或基)

    F. Ivan and Burgers 题目链接:https://codeforces.com/contest/1100/problem/F 题意: 给出n个数,然后有多个询问,每次回答询问所给出的区 ...

  7. Codeforces Round #590 (Div. 3) E. Special Permutations

    链接: https://codeforces.com/contest/1234/problem/E 题意: Let's define pi(n) as the following permutatio ...

  8. Codeforces Round #590 (Div. 3) D. Distinct Characters Queries(线段树, 位运算)

    链接: https://codeforces.com/contest/1234/problem/D 题意: You are given a string s consisting of lowerca ...

  9. Codeforces Round #600 (Div. 2)E F

    题:https://codeforces.com/contest/1253/problem/E 题意:给定n个信号源,俩个参数x和s,x代表这个信号源的位置,s代表这个信号源的波及长度,即这个信号源可 ...

随机推荐

  1. C# 在知道对象时编译json 而不调用json类

    StringBuilder sb = new StringBuilder();            sb.Append('[');                       foreach (va ...

  2. HDU 6438 Buy and Resell ( 2018 CCPC 网络赛 && 贪心 )

    题目链接 题意 : 给出一些数.你可以从左到右对这些数进行三种操作花费 Ai 买入东西.以 Ai 价格卖出你当前有的东西.或者什么都不做.现在问你可以获取的最大利益是多少? 分析 : 和 CF 867 ...

  3. CSP2019-S2参赛总结 暨 近期学习反思

    前言 岁月不居,时节如流.眨眼间,2019的联赛就已经落下帷幕了,回忆这一年的学习,有许许多多的事情想写下来.趁联赛结果还未出来,赶紧写下这篇文章,以记录我这段时间的学习和生活. "你怎么又 ...

  4. JS框架_(Vue.js)带有星期日期的数字时钟

    百度云盘 传送门 密码:tv1v 数字时钟效果: <!doctype html> <html> <head> <meta charset="utf- ...

  5. 缓存区溢出之slmail fuzzing

    这是我们的实验环境 kali 172.18.5.118smtp windows2003  172.18.5.117  pop3 110 smtp 25 本机 172.18.5.114 已经知道slma ...

  6. [JZOJ5398]:Adore(状压DP+记忆化搜索)

    题目描述 小$w$偶然间见到了一个$DAG$. 这个$DAG$有$m$层,第一层只有一个源点,最后一层只有一个汇点,剩下的每一层都有$k$个节点. 现在小$w$每次可以取反第$i(1<i< ...

  7. js函数收集

    常见js函数收集: 转自:http://www.qdfuns.com/notes/36030/2eb2d45cccd4e62020b0a6f0586390af.html //运动框架 function ...

  8. MVC 小demo

    .field-validation-error { color: #f00; } .field-validation-valid { display: none; } .input-validatio ...

  9. spark MLlib 概念 3: 卡方分布(chi-squared distribution)

    数学定义[编辑] 若k个随机变量.--.是相互独立,符合标准正态分布的随机变量(数学期望为0.方差为1),则随机变量Z的平方和 被称为服从自由度为 k 的卡方分布,记作 Definition[edit ...

  10. @RequestMapping注解学习

    1.@RequestMapping注释用于映射url到控制器类或一个特定的处理程序方法.可用于类或方法上.用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径. 参考地址:https://ww ...