2490小蓝的括号串

2490小蓝的括号串

⭐️难度:中等

🌟考点:栈

📖

📚

java 复制代码
import javax.sound.sampled.Line;
import java.math.BigInteger;

import java.util.Arrays;
import java.util.Scanner;

public class  Main {
    static int N = 105;
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int m = sc.nextInt();
        char []a = new char[N];
        String str = sc.next();

        if(m % 2 == 0){ // m 为奇数,永远不可能合法
            int top = 0;
            // 把字符串转化成字符数组
            for (int i = 0; i < m; i++) {
                char c = str.charAt(i);
                if(c == '('){
                    a[top] = '(';
                    top ++;
                } else if (c == ')') {
                    if(top == 0){ // 如果栈到底还有右括号进来,永远不可能合法
                        top = 1;
                        break;
                    }
                    if(a[top - 1] == '('){
                        a[top] = ' ';
                        top --;
                    }else{
                        a[top] = ')';
                        top ++;
                    }
                }
            }

            if(top == 0){
                System.out.println("Yes");
            }else{
                System.out.println("No");
            }
        }else{
            System.out.println("No");
        }

    }
}

小细节:YES和Yes

相关推荐
ITfeib4 分钟前
Flutter
开发语言·javascript·flutter
考虑考虑32 分钟前
JDK9中的dropWhile
java·后端·java ee
想躺平的咸鱼干41 分钟前
Volatile解决指令重排和单例模式
java·开发语言·单例模式·线程·并发编程
Owen_Q1 小时前
Denso Create Programming Contest 2025(AtCoder Beginner Contest 413)
开发语言·算法·职场和发展
hqxstudying1 小时前
java依赖注入方法
java·spring·log4j·ioc·依赖
·云扬·1 小时前
【Java源码阅读系列37】深度解读Java BufferedReader 源码
java·开发语言
liulilittle2 小时前
C++ i386/AMD64平台汇编指令对齐长度获取实现
c语言·开发语言·汇编·c++
Bug退退退1232 小时前
RabbitMQ 高级特性之重试机制
java·分布式·spring·rabbitmq
小皮侠2 小时前
nginx的使用
java·运维·服务器·前端·git·nginx·github
Thomas_YXQ2 小时前
Unity URP法线贴图实现教程
开发语言·unity·性能优化·游戏引擎·unity3d·贴图·单一职责原则