请指出我可能做错了什么
BYTSE2 - spoj: Please suggest what i might be doing wrong?
//BYTESE2
#include<iostream>
#include<vector>
#include<algorithm>
#include<cmath>
using namespace std;
typedef long long ll;
bool compare(const ll &i, const ll &j)
{
return (abs(i) < abs(j));
}
int main()
{
std::cout.sync_with_stdio(false);
int t,n;
cin>>t;
while(t--)
{
vector <ll> v;
cin>>n;
if(n==0)
{
cout<<"0n";
continue;
}
ll start, end, i, j;
j=0;
for(i=0;i<n;i++)
{
cin>>start>>end;
v.push_back(start * 1);
v.push_back(end * -1);
}
sort(v.begin(), v.end(), compare);
int c=0, max=0;
vector <ll>::iterator it = v.begin();
while(it != v.end())
{
if(*it > 0)
c++;
else
c--;
if(max < c)
max = c;
it++;
}
cout<<max<<endl;
}
return 0;
}
使用变量存储当前编号。大厅里跳舞的人。对于每个出口,我都要从变量中减去。我尝试了一些测试用例,它工作得很好。但在提交时,它说错误的答案!
我试了很多方法做这道题,但都是徒劳的!请建议我可能做错了什么!问题链接:http://www.spoj.com/problems/BYTESE2/
代码在我看来非常好。我也喜欢把开始时间设为正数,结束时间设为负数的方法,但似乎在给定的问题中,时间并不总是正数,也就是说,海格可能是从某个负数开始记录时间的,所以在这种情况下,开始时间和结束时间都可能是负数,用这种方法会得出错误的答案。因此,您将不得不使用一些额外的内存来存储它是开始时间还是结束时间。我把你的代码编辑如下,它被接受了。
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
bool compare(const pair<int, bool> &i, const pair<int, bool> &j)
{
return (i.first < j.first);
}
int main()
{
int t,n;
vector <pair<int, bool> > v;
cin>>t;
while(t--)
{
cin>>n;
int start, end, i, j;
j=0;
for(i=0;i<n;i++)
{
cin>>start>>end;
pair <int, bool> p1 (start, true);
pair<int, bool> p2 (end, false);
v.push_back(p1);
v.push_back(p2);
}
sort(v.begin(), v.end(), compare);
int c=0, max=0;
vector <pair<int, bool> >::iterator it = v.begin();
while(it != v.end())
{
if((*it).second)
c++;
else
c--;
if(max < c)
max = c;
it++;
}
cout<<max<<endl;
v.clear();
}
return 0;
}
相关文章:
- #定义c-预处理器常量..我做错了什么
- 努力将整数转换为链表。不知道我在这里做错了什么
- .h 和.cpp文件分离时出错,但仅使用 .h 文件时没有错误.我做错了什么?
- 我的C++线程做错了什么?
- 谁能告诉我我用 getline 做错了什么 (cpp) 格式
- 没有输出的合并排序我做错了什么?
- 我正在尝试使用 while 循环从字符串中删除字母,直到没有字母。我在这里做错了什么?
- 在C++中使用 AKS 素数测试计算双胞胎素数 我做错了什么?
- 我一直试图弄清楚我在这个链表程序中做错了什么
- 我正在尝试学习如何在 c++ 中传递指针,但出现错误:没有用于调用"test"的匹配函数。我做错了什么?
- FFMPEG,C++,内存泄漏,我做错了什么?
- 我做错了什么?反向字符串 C++
- 我在这个课上做错了什么?
- 创建整数的 2D 数组,该数组将使用两个函数用随机数填充矩阵.我做错了什么?
- 在不使用内置库函数的情况下添加字符串,我做错了什么?
- 我做错了什么?GetDiskFreeSpaceExA的功能根本不起作用
- 我在查找和字符串上做错了什么?
- 我正在尝试用 c++ 制作一个日志记录框架,但信息没有传递给记录器的子组件,我做错了什么?
- 我在尝试将多个值push_back向量时出错。我做错了什么?
- 插入排序:我做错了什么?