#include<iostream>
using namespace std;
template <class T, int N>
class SeqList {
public:
int Locate(T);
T Delete(int i);
void Insert(int i, T x);
void PrintList();
void Operation(char ch);
private:
T data[N];
int length = 0;
};
template <class T, int N>
void SeqList<T, N>::Insert(int i, T x)
{
if ((i < 1) || (i > length + 1)) throw "插入位置异常";
if (length >= N) throw"上溢";
int j;
for (j = length; j >= i; j--)
{
data[j] = data[j - 1];
}
data[i - 1] = x;
length++;
}
template <class T, int N>
T SeqList<T, N>::Delete(int i)
{
if ((i < 1) || (i > length)) throw"位置异常";
if (length == 0) throw"下溢";
T temp = data[i - 1];
for (int j = i; j < length; j++)
{
data[j - 1] = data[j];
}
length--;
return temp;
}
template<class T, int N>
int SeqList<T, N>::Locate(T x)
{
data[0] = x;
for (int i = length; data[i] != x; i--)
return i;
}
template<class T, int N>
void SeqList<T, N>::PrintList()
{
if (length == 1)
{
cout << data[0];
}
else
{
for (int i = 0; i < length - 1; i++)
{
cout << data[i] << " ";
}
cout << data[length-1];
}
cout << endl;
}
template<class T, int N>
void SeqList<T,N>::Operation(char ch)
{
int x;
T y;
switch (ch)
{
case 'i':
cin >> x >> y;
Insert(x, y);
break;
case 'd':
cin >> x;
Delete(x);
break;
case 'l':
cin >> y;
x=Locate(y);
cout << x << endl;
break;
case 'p':
PrintList();
break;
}
}
int main(void)
{
SeqList<int, 100>a;
SeqList<char, 100>b;
SeqList<double, 100>c;
char ch1, ch2;
while (cin >> ch1)
{
cin >> ch2;
switch (ch1)
{
case 'a':a.Operation(ch2);
break;
case 'b':b.Operation(ch2);
break;
case 'c':c.Operation(ch2);
break;
}
}
return 0;
}
请问为什么在本地vs上运行输入输出都没啥问题,但是上传到oj系统就是会答案错误呢?实在不会找&找不到哪里不对,不熟悉oj,求指导
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- CSDN专家-link 2022-03-21 18:40关注
locate函数为何要 data[0] = x;????
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 2024-五一综合模拟赛
- ¥15 下图接收小电路,谁知道原理
- ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
- ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
- ¥15 手机接入宽带网线,如何释放宽带全部速度
- ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
- ¥15 ETLCloud 处理json多层级问题
- ¥15 matlab中使用gurobi时报错
- ¥15 这个主板怎么能扩出一两个sata口
- ¥15 不是,这到底错哪儿了😭