Codeforces 380A Sereja and Prefixes(模拟)

本文介绍了Codeforces 380A题目——Sereja and Prefixes的解题方法。题目要求处理m次序列操作,包括添加元素和复制序列段,之后进行n次查询,询问序列中特定位置的数值。解题思路是预先存储前10^5个数,然后在遍历查询的同时更新序列状态。由于题目细节繁琐,作者表达了对这类题目的不喜好。
摘要由CSDN通过智能技术生成

题目链接:Codeforces 380A Sereja and Prefixes


题目大意:给出m次操作,分别有1:在序列最后加上x;2:复制1~x,y次,添加在序列尾部。然后给出n次查询,问说在第k[i]个位置上的数事多少。


解题思路:因为x不会大于10^5,就是说复制的部分最多就10^5,那么久可以在一开始将前10^5个数记录下来,后面只需要遍历n的同时移动m即可,但是字节很恶心,表示这辈子再也不想敲这种题了。


#include <stdio.h>
#include <string.h>
#include <iostream>

using namespace std;
const int N = 100005;
typedef long long ll;

struct order {
	int s;
	ll x, y;
}o[N];
int n, m, num[N], ans[N], c, cnt;
ll k[N];

void handle () {
	c
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值