开关电灯-度小满春招基础架构研发工程师第2批

度小满校招笔试真题_Java工程师、C++工程师_牛客网

题目分析:我们只关注第一次熄灭,熄灭区间是[i,n],所以后续再出现的值如果大于等于i是不起任何作用的。每次读取开关编号x,如果前面有比x小的编号,x就不起作用。

模拟即可,复杂度O(m+n)

cpp 复制代码
#include <bits/stdc++.h>
typedef long long ll;
using namespace std;
int v[100005];
int main()
{
    ios::sync_with_stdio(0),cin.tie(0);
    int i,j,x,n,m,minv;
    cin>>n>>m;
    minv=n+1;
    for(i=1; i<=m; i++)
    {/**< 关灯的逻辑:如果前面有比x小的值,哪么[x,n]所在的灯已经打开了 */
        cin>>x;
        if(x<minv)
        {
            for(j=x; j<minv; j++)
                v[j]=i;
            minv=x;
        }
    }
    for(i=1;i<=n;i++)
        cout<<v[i]<<' ';
    return 0;
}
相关推荐
IronMurphy6 小时前
【算法三十九】994. 腐烂的橘子
算法
Ares-Wang7 小时前
算法》》旅行商问题 TSP、7座桥问题 哈密顿回路 深度优先 和 宽度优先
算法·深度优先·宽度优先
Liqiuyue7 小时前
Transformer:现代AI革命背后的核心模型
人工智能·算法·机器学习
WolfGang0073217 小时前
代码随想录算法训练营 Day34 | 动态规划 part07
算法·动态规划
Kk.08028 小时前
Linux(十一)fork实例练习、文件操作示例及相关面试题目分享
linux·运维·算法
潇冉沐晴9 小时前
2026CCCC第三次模拟赛 部分题解
算法
WolfGang0073219 小时前
代码随想录算法训练营 Day32 | 动态规划 part05
算法·动态规划
碧海银沙音频科技研究院9 小时前
1-1杰理蓝牙SOC的UI配置开发方法
人工智能·深度学习·算法
啊我不会诶10 小时前
2024CCPC长春邀请赛
算法