首页 > 其他分享 >cf 583 B. Robot's Task(模拟)

cf 583 B. Robot's Task(模拟)

时间:2023-08-15 17:36:30浏览次数:36  
标签:10 Task 583 int Robot cf include 模拟 1000


链接:http://codeforces.com/problemset/problem/583/B



//求改变的方向次数

//直接模拟 题目是从1 开始 所以从左到右 从右到左


#include <stdio.h>
#include <algorithm>
using namespace std;

int a[1000+10];
int vis[1000+10];
int main()
{
    int n,t=0;
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        scanf("%d",a+i);
    }
    if(n==1){printf("0\n");return 0;}
    int ans,flag,cnt=0;
    ans=flag=0;
    while(cnt!=n)
    {
        for(int i=0;i<n;i++)
        {
            if(a[i]<=cnt&&!vis[i])
            {
                cnt++;
                if(!flag)
                {
                    ans++;
                    flag=1;
                }
                vis[i]=1;
            }
        }
        for(int i=n-1;i>=0;i--)
        {
            if(a[i]<=cnt&&!vis[i])
            {
                cnt++;
                if(flag)
                {
                    ans++;
                    flag=0;
                }
                vis[i]=1;
            }
        }
    }
    printf("%d",ans-1);

    return 0;
}




标签:10,Task,583,int,Robot,cf,include,模拟,1000
From: https://blog.51cto.com/u_3936220/7091384

相关文章

  • CF杂题选刷
    CF1855BLongestDivisorsInterval对于任意一个区间\(\left[l,r\right]\),一定有\(\foralli\in\left[1,r-l+1\right]\),都\(\existsj\in\left[l,r\right]\),使得\(i\midj\)。因为模\(i\)意义下的正整数每\(i\)个一循环,由于\(i\)小于区间长度,所以在这个......
  • WCF
    WCF概念一.SOA概念面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服......
  • 题解 CF379D New Year Letter
    思路提供一种比较容易想到的做法。拿到题看数据范围发现都很小,所以放心大胆地暴力。容易发现\(s_i\)中AC的个数等于\(s_{i-2}\)中AC的个数加\(s_{i-1}\)中AC的个数再加上两者拼接处可能有的一个AC。所以\(s_1\)和\(s_2\)从第二个字符到倒数第二个字符这之间......
  • CF1845D Rating System 题解
    题面给定一个长度为\(n\)数列\(a\),保证每项都不为\(0\)。初始时\(x=0\),然后对于\(1\lei\len\),按顺序进行如下操作:如果\(x\gek\),则\(x\rightarrow\max(k,x+a_i)\),否则\(x\rightarrowx+a_i\)。你需要求出\(k\),使得\(x\)的值尽量大。题解如果我们不考虑\(k......
  • CF793F Julia the snail 题解
    题意有一个长为\(n\)的杆,上面有\(m\)条绳子,每条绳子可以让蜗牛从\(l_i\)爬到\(r_i\)(中途不能离开),保证\(r_i\)各不相同。蜗牛也可以自然下落。现在有\(q\)次询问,询问\(x\)出发,途中高度不能低于\(x\)或高于\(y\),问最高能爬到的位置。\(n,m,q\leq10^5\)。题解......
  • CF1859C 题解
    思路我们实际上发现它计算的就是\(p_i\cdoti\)的和再减去一个\(p_i\cdoti\)中的最大值。那我们可以枚举这个最大值\(p_x\cdotx\),这个值就是最后和中需要删除的数值。这里我们可以使用贪心。我们可以从\(n\sim1\)枚举除\(p_i\)的每个数字需要配的数字。当然,......
  • CF1859B 题解
    题意给定\(n\)个长度为\(m\)的数组,每个数组可以向别的数组转移最多一个数字,任意一个数组都可以接受无穷多的数字,最大化每个数组的最小值之和。做法考虑贪心。我们记第\(i\)个数组的第\(j\)个数字为\(a_{i,j}\)。我们先对每一个数组按照升序进行排序,那我们最不愿意......
  • cf1849做题记录
    A题面分类讨论\(b+c\)和\(a\)的大小即可。点击查看代码#include<bits/stdc++.h>#defineullunsignedlonglong#definelllonglong#definepiipair<int,int>#definepdipair<double,int>#definepbpush_back#defineeps1e-9#definempmake_pairus......
  • [nc 记录] CF13333E Road to 1600
    赛时没做出来一直在往随机想。题意挺明确。发现到\(n\timesn\)这个条件,联想到做过的CF1172D,递归去掉一行一列的基本想法就有了。那么让两个棋子从右下开始,走完多出的一行一列,然后走进剩余的\((n-1)\times(n-1)\)。真可以?这就是*2400的构造?这我还能想不出来?只用构造......
  • 【题解】Educational Codeforces Round 146(CF1814)
    而且怎么感觉E,F比D要简单很多,大概是因为比较套路吧[惊恐]A.Coins题目描述:本题一共有\(t\)组数据。每组数据包含两个整数\(n\)和\(k\),如果存在两个非负整数\(x,y\),满足\(2\timesx+k\timesy=n\),输出YES,否则输出NO(yes,Yes,NO,nO均可)。题目分析:注意到\(y\)可......