求助0分

P1323 删数问题

请问您是什么问题?是第一问还是第二问 蒟蒻觉得这一段开问题: ```cpp for(int i=1;i<=k+5;i++){ a[++top]=a[w]*2+1; a[++top]=a[w]*4+5; w++; } for(w;w<=k+1;w++){ a[++top]=a[w]*2+1; a[++top]=a[w]*4+5; } char b[50001]; sort(a+1,a+k+6); ``` 首先您先把队头两个衍生的数塞了进去,即使最后排序,也无法保证这是一个正确的序列,因为如果你填的这个数爆了k的范围,即使排序也没用。 其次不太理解为什么要写k+5,说实话这道题手打队列有点难,STL库有模板的。 ```cpp #include <queue>//队列和优先队列 queue<int> q;//这里int指队列里元素的类型 q.push()//塞一个进去 q.pop()//弹出队首 q.front()//获取队头 q.empty()//队列空则返回真 ``` 建议用队顶队或者优先队列。
by DFSer @ 2022-08-18 22:11:42


|