SPOJ - 运行时错误 SIGSEGV

2023-12-02

以下是实施中缀到后缀转换,它在我的计算机上运行良好,但当我在 SPOJ 上提交时,它给了我运行时错误 SIGSEGV,我是竞争性编程的新手,我无法处理此类错误。

#include <iostream>
#include <stack>
#include<string.h>
#include<ctype.h>
using namespace std;
int prec(char ch){
    switch(ch){
        case '^' : return 3;
                    break;
        case '*':
        case '/': return 2;
                break;
        case '+':
        case '-': return 1;
                break;
        default: return -1;
    }
}
void pti(char a[]){
    stack<int> post;
    int k = -1;
    for(int i = 0;i<strlen(a);i++){
        if(isalnum(a[i]))
            a[++k] = a[i];
        else if(a[i] == '(')
            post.push(a[i]);
        else if(a[i] == ')'){
            while(!post.empty() && post.top()!= '('){
                a[++k] = post.top();
                post.pop();
            }
            post.pop();
        }
        else {
            while(!post.empty() && prec(a[i]) <= prec(post.top())){
                a[++k] = post.top();
                post.pop();
            }
            post.push(a[i]);
        }
    }
    while(!post.empty()){
        a[++k] = post.top();
        post.pop();
    }
    a[++k] = '\0';
    cout<<a<<endl;
}
int main()
{
   int t;
   cin>>t;
   for(int i = 0;i<t;i++){
        char a[100];
        cin>>a;
        pti(a);
   }
}

您只需要使输入数组更长,例如大小为 1000 时获得 AC。

SIGSEGV 信号意味着发生了分段错误,这基本上意味着您访问了不属于您的内存。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SPOJ - 运行时错误 SIGSEGV 的相关文章

随机推荐

  • 从 Windows 7 中的 php 命令行脚本复制到剪贴板

    我有一个 php 5 5 脚本 我在 Windows 7 中从命令行运行该脚本 如下所示 C php 5 5 5 php exe C scripts putString php 我的问题是 是否可以将脚本中的内容复制到 Windows 剪贴
  • 使用 Guice Custom Scopes 和 Jersey 进行多租户

    我正在使用 Guice for DI 与 Jersey 开发多租户应用程序 我也使用 Dropwizard 但我认为这在这里并不重要 令我困扰的一件事是 某种tenancy id我的申请中到处都是 我的大多数网址如下所示 tenancy i
  • 合并两个具有复杂条件的 pandas 数据框

    我想合并两个数据框 让我们考虑以下两个 df df1 id A ts A course weight id1 2017 04 27 01 35 30 cotton 3 5 id1 2017 04 27 01 36 05 cotton 3 5
  • 如何在 Tomcat 的 web.xml 中映射欢迎文件的过滤器?

    我创建了一个Filter检查Cookies 与请求对象和forward相应的请求感谢this and this问题 现在我想映射这个Filter只是为了welcome file正如我在中声明的那样web xml 说我有welcome fil
  • 使用 Selenium 测试 AngularJS

    我在 ASP MVC AngularJS 堆栈上有一个 SPA 应用程序 我想测试 UI 现在我正在尝试 Selenium 与 PhantomJS 和 WebKit 驱动程序 这是一个示例测试页面 具有单个元素的视图 清单项目 li 从服务
  • http 文件访问和 php 会话

    如果站点有 php 会话来强制对站点上以 php 实现的页面进行身份验证 授权 那么相同的逻辑如何强制访问某些文件 假设目录中的文件存储库 因此 var www html 通过身份验证受到保护 但是 此 PHP 身份验证逻辑不会禁止用户简单
  • 关闭调试打印

    有时我有很多打印分散在函数周围来打印调试输出 为了切换这个调试输出 我想出了这个 def f debug False print builtins print if debug else lambda p None 或者 如果我需要打印除调
  • 为什么自动装箱会使 Java 中的某些调用变得不明确?

    今天我注意到自动装箱有时会导致方法重载解析中的歧义 最简单的例子似乎是这样的 public class Test static void f Object a boolean b static void f Object a Object
  • 在视图控制器之间传递数据/对象/moc - 最佳实践

    我有一个我怀疑很常见的场景 我发现了各种想法来回答其他类似的问题 包括设置 IBOutlet 将 NSmanagementobjects 作为属性传递以及仅使用一个视图控制器但交换视图 但我不确定这将是为我的解决方案实施的最佳想法 我有一个
  • 有什么原因我不能只使用 git 来跟踪 svn checkout 的更改吗?

    我已经习惯在我的一些家庭项目和工作项目中使用 git 来跟踪我在自己的文件夹中所做的更改 我想用它来跟踪我在 svn checkout 中对一组文件所做的更改 我已经阅读过有关 git svn 的内容 它似乎超出了我目前想要 需要的范围 我
  • 根据与其他 2 列相关的条件创建一列

    我在 pandas DataFrame 中有两列 我们称之为 col1 和 col2 两者都包含 True False 值 我需要从这两列 col3 创建第三列 如果两列中的一列或另一列在该记录中具有 True 值 则该记录将具有 True
  • Z - R 中多边形(shapefile)的值

    我的目标是在 R 中创建 3D 可视化 我有柏林市区 Ortsteile 的 shapefile 并希望将值 居民 平方公里 突出显示为 z 值 我已将 shapefile 实现到 R 中 并为密度值 Einwohnerd 着色 如下所示
  • 将 pandas 数据框中的列向上移动一位?

    我有一个熊猫数据框 我想 落后 我的一篇专栏 这意味着 例如 将整个 gdp 列向上移动一位 然后删除剩余行底部的所有多余数据 以便所有列再次具有相等的长度 df y gdp cap 0 1 2 5 1 2 3 9 2 8 7 2 3 3
  • 仅在移动视图上隐藏 div 标签?

    我正在为网站创建流畅的布局 我试图隐藏 a 的内容 div 或整个 div 本身在移动视图中 但不在平板电脑和桌面视图中 这是我到目前为止所得到的 title message clear both float left margin 10p
  • 转换日期格式返回错误的日期 xcode [重复]

    这个问题在这里已经有答案了 我想转换日期23 May 2017 to 23 05 2017 我尝试使用以下代码但它返回25 12 2016 NSDateFormatter oldFormatter NSDateFormatter new o
  • Eclipse - 导入您自己的库

    好的 希望这既快速又简单 我有两个独立的java项目 Library 和 Project 并且 Project 中有一个类想要实现 Library 中找到的方法 我正在寻找某种在 项目 类顶部进行的 导入 调用 以使 库 中找到的方法可以在
  • 更改 TextBlock 的绑定文本内子字符串的颜色

    我正在将一些财产绑定到我的TextBlock
  • 无法加载文件或程序集“MySql.Data,版本=6.3.6.0”

    我完全不知所措 我遇到了超级奇怪的问题 我仍然不明白 我正在运行 Entity Framework 4 1 MySql 5 xx 我的 MySql Connector 是 v 6 4 4 一切正常本地精美 但是每当我上传到服务器时 我都会收
  • Android MultiChoiceModeListener 支持 2.3

    为了支持操作栏 我使用 Android 支持库包 V4 和 V7 我在我的应用程序中使用 MultiChoiceModeListener 我如何将 MultiChoiceModeListener 用于 2 3 设备 工作示例 V7 impo
  • SPOJ - 运行时错误 SIGSEGV

    以下是实施中缀到后缀转换 它在我的计算机上运行良好 但当我在 SPOJ 上提交时 它给了我运行时错误 SIGSEGV 我是竞争性编程的新手 我无法处理此类错误 include