首页 > 其他分享 >每日OJ_牛客_点击消除(栈)

每日OJ_牛客_点击消除(栈)

时间:2024-09-15 19:21:12浏览次数:10  
标签:OJ int 牛客 点击 字符串 include 消除

目录

牛客_点击消除(栈)

解析代码


牛客_点击消除(栈)

点击消除_牛客题霸_牛客网

描述:

牛牛拿到了一个字符串。
他每次“点击”,可以把字符串中相邻两个相同字母消除,例如,字符串"abbc"点击后可以生成"ac"。
但相同而不相邻、不相同的相邻字母都是不可以被消除的。
牛牛想把字符串变得尽可能短。他想知道,当他点击了足够多次之后,字符串的最终形态是什么?


解析代码

用栈来模拟消除的过程即可。

#include <iostream>
#include <cmath>
#include <vector>
using namespace std;

int main()
{
    int a = 0;
    while(cin >> a)
    {
        cout << a << " = ";
        vector<int> arr;
        for(int i = 2; i <= sqrt(a); ++i)
        {
            while(a % i == 0)
            {
                // cout << i << " * ";
                arr.push_back(i);
                a /= i;
            }
        }
        if(a != 1) // 说明是素数
        {
            // cout << a << " * ";
            arr.push_back(a);
        }
        int sz = arr.size();
        for(int i = 0; i < sz; ++i)
        {
            cout << arr[i];
            if(i != sz - 1)
                cout << " * ";
        }
        cout << endl;
    }

    return 0;
}

标签:OJ,int,牛客,点击,字符串,include,消除
From: https://blog.csdn.net/GRrtx/article/details/142260725

相关文章

  • 织梦dedecms怎么修改点击量
    在DEDECMS中修改文章的点击量,可以通过多种方式进行,包括直接修改数据库、在模板中动态调用点击量、以及通过后台设置默认点击量等。以下是详细的步骤和方法:1.直接修改数据库如果你想直接修改数据库中的点击量,可以按照以下步骤操作:登录数据库:使用数据库管理工具(如phpMyAdmin......
  • LOJ#2885. 「SDOI2010」猪国杀
    对拍器在此。https://www.luogu.com/discuss/81283献忠!AC代码modoiread{usestd::{io::{stdin,Read},ops::{Add,Mul,Neg},};pubfnnext()->u8{letmuta=stdin().lock();letmutc=[0u8];matcha......
  • 每日OJ_牛客_NC313 两个数组的交集
    目录牛客_NC313 两个数组的交集解析代码牛客_NC313 两个数组的交集两个数组的交集_牛客题霸_牛客网classSolution{public:/***代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可***@paramnums1int整型vec......
  • BZOJ4144 Petrol
    最小生成树+最短路+并查集维护题目#include<bits/stdc++.h>#defineintlonglongusingnamespacestd;constintN=2e5+100,M=N*2;intn,m,s;inth[N],e[M],ne[M],w[M],idx;intdis[N],pos[N];boolvis[N];intf[N];inta[N]; boolans[N];intq;structNODE{......
  • sdfoj 小海的数学王国(gen)
    小海酷爱数学,他的梦想是在太平洋上建立一个数学王国。终于有一天,他的同学小升研发出了一类叫做“数学分子”的东西,并兴高采烈地跑来找到他,给了他$N$种“数学分子”,按$1$到$N$依次编号。小海要用部分“数学分子”投放到太平洋上构建数学王国。已知每种“数学分子”都可以掌......
  • QTreeView代理QStyledItemDelegate实现按钮的鼠标hover移动和点击响应
    1.需求描述QStyledItemDelegate实现按钮的点击和响应功能,鼠标移动到按钮上,也会显示tooltip提示信息2.实现方法(1)重写editorEvent函数,根据type类型触发不同的响应函数为了实现按钮的响应,需要重写QStyledItemDelegate类的editorEvent函数,并根据插入时设置进去的type类型,判断是......
  • vue实现点击任意位置关闭侧滑显示
    需求:点击el-table列表展示侧滑框,再次点击列表中不同数据,刷新侧滑框中数据;点击外部任意位置关闭侧滑框思路:给整个页面加点击事件click,通过target判断点击的外层元素以及点击的位置,执行关闭侧滑框方法代码:mounted中监听click事件mounted(){letdoc=$("#app").get(0);......
  • Linux云计算 |【第三阶段】PROJECT1-DAY3
    主要内容:Keepalived高可用、部署Ceph分布式存储一、网站架构进阶项目案例案例1:Keepalived高可用延续PROJECT1-DAY2案例,部署两台代理服务器,实现如下效果:1)利用keepalived实现两台代理服务器的高可用(192.168.2.5/192.168.2.6)2)配置VIP为192.168.2.803)修改对应的域名解析......
  • 线段树与离散化技巧 Mayor's posters——poj 2528
    问题描述:有一堵海报墙,从左到右一共有10000000个小块,墙上贴了许多海报,每张海报的高度与墙的高度相同,宽度不同,新帖的海报会将原有的海报覆盖,问当所有人把海报贴完是,墙上可以看到几张海报输入:第一行输入一个整数c表示测试数,每个测试第一行输入一个整数n(1<=N<=10000),代表张贴海报数......
  • FIT2002 IT Project Management
    FIT2002 IT Project ManagementSemester2, 2024AssignmentTwo–TeamAssignmentDue Dates:●    Partone-Teamsubmission(5%):TeamCharter.There is a single Team Charter for each team, and one team membersubmitsthefilevia Mood......