Codeforces Round 894 (Div. 3)

A. Gift Carpet

题意:判断一列一个字母有没有“vika”

思路:挨个枚举每一列

#include<bits/stdc++.h>
using namespace std;
char mp[25][25];
char x[]={'v','i','k','a'};
void solve()
{
int m,n;
cin>>m>>n;
for(int i=1;i<=m;i++){
for(int j=1;j<=n;j++){
cin>>mp[i][j];
}
}
if(n<4){
cout<<"NO"<<endl;
return;
}
int res=0;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(mp[j][i]==x[res]){
res++;
break;
}
}
}
if(res==4) cout<<"YES"<<endl;
else cout<<"NO"<<endl;
}
int main()
{
int t;
cin>>t;
while(t--){
solve();
}
return 0;
}

B. Sequence Game

题意:操作:删除a[i];结果:给的数组满足a[i]<=a[i+1]

思路:找到a[i]>a[i+1]插入1

#include <bits/stdc++.h>
using namespace std;
const int MAX=4e5;
int a[MAX];
void solve()
{
int n,old,res=1;
cin>>n>>old;
a[0]=old;
for(int i=1;i<n;i++){
int ne;
cin>>ne;
if(old>ne){
a[res]=1;
res++;
}
old=ne;
a[res]=old;
res++;
}
cout<<res<<endl;
for(int i=0;i<res;i++){
cout<<a[i]<<" ";
}
cout<<endl;
}
int main()
{
int t;
cin>>t;
while(t--){
solve();
}
return 0;
}

C. Flower City Fence

题意:n个宽为1长为a[i]的长方形组成了一个大图,他对称是否重合

思路:只需要他的高度和数量相同就行(画个图就理解了)

#include <bits/stdc++.h>
using namespace std;
const int MAX=2e5+10;
int a[MAX],b[MAX];
void solve()
{
memset(b,0,sizeof(b));
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for (int i = 1; i <= n; ++i)
{
if (a[i] > n)
{
cout<<"NO\n";
return;
}
b[a[i]] = i;
}
for (int i = n; i >= 1; --i)
{
b[i] = max(b[i], b[i + 1]);
if (a[i] != b[i])
{
cout<<"NO\n";
return;
}
}
cout<<"YES\n";
}
int main()
{
int t;
cin>>t;
while(t--){
solve();
}
return 0;
}

D. Ice Cream Balls

题意:选择n个数使得两两组合的方案数为n

思路:两个不同的数可组成的方案数是s*(s-1);后面再加入和之前集合中的数相同的数(增加的方案是(s,s)),先二分找到s然后再相加

#include <bits/stdc++.h>
using namespace std;
void solve() {
long long int n;
cin >> n;
long long int l = 2, r = 2e+10;
while (l < r) {
long long int mid = (l + r) / 2;
if (mid * (mid - 1) / 2 < n)
l = mid + 1;
else
r = mid;
}
if (l * (l - 1) / 2 == n)
cout << l << "\n";
else {
long long int t = l - 1, s = t * (t - 1) / 2;
cout << t+n-s << "\n";
}
} int main() {
int t;
cin >> t;
while (t--) {
solve();
}
return 0;
}

E. Kolya and Movie Theatre

题意:满意度:(y-x+1)*d,求最大满意度是多少

思路:假设你看的电影场次分别为x,y,z;总要减去的满意度=(x-0)+(y-x)+(z-y)=z;即可得只需要枚举最后一场

#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
multiset<int> st;
int a[200010];
void solve()
{
LL n, m, d, ans = 0, sum = 0;
scanf("%lld%lld%lld", &n, &m, &d);
st.clear();
for (int i = 1; i <= n; ++i)
{
scanf("%lld", &a[i]);
if (a[i] > 0 && st.size() < m)
{
st.insert(a[i]);
sum += a[i];
}
else if (*st.begin() < a[i])
{
sum -= *st.begin();
st.erase(st.begin());
sum += a[i];
st.insert(a[i]);
}
ans = max(ans, sum - i * d);
}
printf("%lld\n", ans);
}
signed main()
{
int t;
cin>>t;
while(t--){
solve();
}
return 0;
}

F. Magic Will Save the World

题意:一秒可以生成w个水魔法,f个火魔法,初值均为0,第i个怪兽有si点力量,要想打败它需要至少si点火魔法或者水魔法。求出至少要多少分钟来打败这n个怪兽

思路:在某一秒之后,水魔法和火魔法可以瞬间消灭所有的怪兽,其中水魔法消灭了若干只怪兽,火魔法消灭了若干怪兽,我们只要算出两种魔法分别消灭的怪兽的力量和,除以每秒产生的魔法数,分别向上取整,取大就能得到,当前怪兽分配的最小时间。

#include <bits/stdc++.h>
using namespace std;
bitset<1000005> bt;
void solve() {
bt.reset();
int w, f;
cin >> w >> f;
int ans = 0x3f3f3f3f;
int n;
cin >> n;
bt[0] = 1;
vector<int> s(n);
int tot = 0;
for (int i = 0; i < n; i++) {
cin >> s[i];
tot += s[i];
}
for (int i = 0; i < n; i++) {
bt |= bt << s[i];
}
for (int i = 0; i <= tot; i++) {
if (bt[i]) {
ans = min(ans, max((i + w - 1) / w, (tot - i + f - 1) / f));
}
}
cout << ans << '\n';
}
int main() {
int t;
cin>>t;
while(t--){
solve();
}
return 0;
}

Codeforces Round 894 (Div. 3)的更多相关文章

  1. Codeforces Round #366 (Div. 2) ABC

    Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...

  2. Codeforces Round #354 (Div. 2) ABCD

    Codeforces Round #354 (Div. 2) Problems     # Name     A Nicholas and Permutation standard input/out ...

  3. Codeforces Round #368 (Div. 2)

    直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...

  4. cf之路,1,Codeforces Round #345 (Div. 2)

     cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅.....   ...

  5. Codeforces Round #279 (Div. 2) ABCDE

    Codeforces Round #279 (Div. 2) 做得我都变绿了! Problems     # Name     A Team Olympiad standard input/outpu ...

  6. Codeforces Round #262 (Div. 2) 1003

    Codeforces Round #262 (Div. 2) 1003 C. Present time limit per test 2 seconds memory limit per test 2 ...

  7. Codeforces Round #262 (Div. 2) 1004

    Codeforces Round #262 (Div. 2) 1004 D. Little Victor and Set time limit per test 1 second memory lim ...

  8. Codeforces Round #371 (Div. 1)

    A: 题目大意: 在一个multiset中要求支持3种操作: 1.增加一个数 2.删去一个数 3.给出一个01序列,问multiset中有多少这样的数,把它的十进制表示中的奇数改成1,偶数改成0后和给 ...

  9. Codeforces Round #268 (Div. 2) ABCD

    CF469 Codeforces Round #268 (Div. 2) http://codeforces.com/contest/469 开学了,时间少,水题就不写题解了,不水的题也不写这么详细了 ...

  10. 贪心+模拟 Codeforces Round #288 (Div. 2) C. Anya and Ghosts

    题目传送门 /* 贪心 + 模拟:首先,如果蜡烛的燃烧时间小于最少需要点燃的蜡烛数一定是-1(蜡烛是1秒点一支), num[g[i]]记录每个鬼访问时已点燃的蜡烛数,若不够,tmp为还需要的蜡烛数, ...

随机推荐

  1. 新一代开源流数据湖平台Apache Paimon入门实操-下

    @ 目录 实战 写表 插入和覆盖数据 更新数据 删除数据 Merge Into 查询表 批量查询 时间旅行 批量增量查询 流式查询 时间旅行 ConsumerID 查询优化 系统表 表指定系统表 分区 ...

  2. Unity UGUI的Button组件的介绍及使用

    UGUI的Button(按钮)组件的介绍及使用 1. 什么是UGUI的Button组件? UGUI(Unity GUI)是Unity引擎中的一套用户界面系统,Button(按钮)是其中的一个常用组件. ...

  3. Vue+SpringBoot项目分离部署踩坑记录

    昨天花了一晚上终于成功部署了个人网站,在这个过程中踩了很多坑,现在回顾总结记录一下,以免今后继续犯错误 前端:Vue 后端:SpringBoot 数据库:Mysql 一.前端 1.前端项目采用Ngin ...

  4. ATtiny88初体验(四):看门狗

    ATtiny88初体验(四):看门狗 ATtiny88单片机的看门狗使用内部独立的128KHz时钟源,拥有3种工作模式: Interrupt模式:超时产生中断: System Reset模式:超时产生 ...

  5. Mybatis插件功能

    1 插件的作用 在Mybatis执行SQL的生命周期中,会使用插件进行埋点,主要包括Executor.StatementHandler.ParameterHandler和ResultSetHandle ...

  6. 深入浅出:SPI机制在JDK与Spring Boot中的应用

    本文分享自华为云社区<Spring高手之路14--深入浅出:SPI机制在JDK与Spring Boot中的应用>,作者:砖业洋__ . Spring Boot不仅是简化Spring应用开发 ...

  7. JavaAgent寄生在目标进程中引起的ClassNotFoundException

    今天有解决方案部的小伙伴反映,我公司XWind产品在分析客户应用程序的潜在性能问题时,总是显现诊断任务异常,为了定位问题的根因,我们马上要求解决方案部的小伙伴提供XWind相关的日志,从日志中找到了如 ...

  8. c语言代码练习10

    //判断输入的数字是否为素数#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int main() { int n = 0; int ...

  9. ubuntu实时查看网速

    可以使用ifstat这个命令 安装 apt install ifstat   1 使用,直接打命令就行 ifstat

  10. Go 复合类型之字典类型介绍

    Go 复合类型之字典类型介绍 目录 Go 复合类型之字典类型介绍 一.map类型介绍 1.1 什么是 map 类型? 1.2 map 类型特性 二.map 变量的声明和初始化 2.1 方法一:使用 m ...