D. Unnatural Language Processing

题目:
D. Unnatural Language Processing
每次测试的时间限制1秒钟
每次测试的内存限制256兆字节
投入标准输入
输出标准输出
露拉觉得很无聊,决定用这五个字母创造一种简单的语言a, b, c, d, e。有两种类型的信件:

元音—信件a和e。他们由以下人员代表V.
辅音—信件b, c,以及d。他们由以下人员代表C.
有两种类型音节在语言中:CV(辅音后跟元音)或CVC(元音前后带辅音)。举个例子,ba, ced, bab是音节,但是aa, eda, baba不是。
A 单词在语言中是一系列音节。Lura在语言中写了一个单词,但她不知道如何将其拆分为音节。帮助她把单词分解成音节。

例如,给定单词bacedbab,它将被拆分成音节,如ba.ced.bab(圆点.代表音节边界)。

投入
输入由多个测试用例组成。第一行包含一个整数t (1≤t≤100)—测试用例的数量。测试用例的描述如下。

每个测试用例的第一行包含一个整数n (1≤n≤2⋅105)—单词的长度。

每个测试用例的第二行包含一个字符串,由n小写拉丁字符—单词。

给出的所有单词都是语言中的有效单词;也就是说,他们只使用字母a, b, c, d, e,每个单词由几个音节组成。

的总和n所有测试案例不超过2⋅105.

输出
对于测试用例,输出一个字符串,表示通过插入一个点将单词分成音节.每对相邻音节之间。

如果有多个可能的分割,输出其中任何一个。输入以这样的方式给出,即至少存在一种可能的分裂。

例子
投入复制
6
8
bacedbab
4
baba
13
daddecabeddad
3
dac
6
dacdac
22
dababbabababbabbababba
输出复制
ba.ced.bab
ba.ba
dad.de.ca.bed.dad
dac
dac.dac
da.bab.ba.ba.bab.bab.ba.bab.ba
思路:
每次遇见V后要看V后面有连着有几个C,如果只有一个C说明是CV结构的,如果有两个C说明是CVC结构的,最后一个单词单独判定。
代码:

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0), cin.tie(0), cout.tie(0)
int main()
{IOS;int n;cin >> n;while (n--){int t;cin >> t;string arr(t+2, 0);//储存字符string wwr(t+2, 0);//将字符转化为C,Vstring ans = "";for (int i = 0; i < t; i++){cin >> arr[i];if (arr[i] == 'a' || arr[i] == 'e')wwr[i] += 'v';elsewwr[i] += 'c';}for (int i = 0; i < t; i++){ans += arr[i];if (wwr[i] == 'c' && i == t - 3)//判断最后一个单词CVC结构{ans += arr[i + 1];ans += arr[i + 2];break;}else if (wwr[i] == 'c' && i == t - 2)//判断最后一个单词是否为CV结构{ans += arr[i + 1];break;}else if (wwr[i] == 'v'){if (wwr[i + 2] == 'c'){ans += arr[i + 1];ans += '.';i++;}else{ans += '.';}}}cout << ans << endl;}return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/584577.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python 操作 MySQL:使用 mysql-connector-python 操作 MySQL 数据库

大家好&#xff0c;我是水滴~~ 当涉及到使用 Python 操作 MySQL 数据库时&#xff0c;mysql-connector-python 库是一个强大而常用的选择。该库提供了与 MySQL 数据库的交互功能&#xff0c;使您能够执行各种数据库操作&#xff0c;如连接数据库、执行查询和插入数据等。在本文…

第十一章 Stream消息驱动

Stream消息驱动 gitee:springcloud_study: springcloud&#xff1a;服务集群、注册中心、配置中心&#xff08;热更新&#xff09;、服务网关&#xff08;校验、路由、负载均衡&#xff09;、分布式缓存、分布式搜索、消息队列&#xff08;异步通信&#xff09;、数据库集群、…

maven命令行安装依赖测试

mvn dependency:get -DgroupIdorg.springframework -DartifactIdspring-core -Dversion5.3.9作用&#xff1a;可用于测试配置环境变量后&#xff0c;能否下载依赖到本地仓库

前后端分离架构的特点以及优缺点

文章目录 一、前后端不分离架构(传统单体结构)1.1 什么是前后端不分离1.2 工作原理1.3 前后端不分离的优缺点1.4 应用场景 二、前后端分离架构2.1 为什么要前后端分离2.2 什么是前后端分离2.3 工作原理2.4 前后端分离的优缺点 参考资料 一、前后端不分离架构(传统单体结构) 首…

【linux】cut的基本使用

cut主要用于按列切分文本行&#xff0c;并输出指定的字段&#xff0c;这是类unix系统中常用的文本处理工具。 基本使用 首先随便去网上找个文本或者列表文件 如果使用cat看文本的话就是这样的 sh-3.2# cat data.csv Name,Age,City,Salary Alice,30,New York,70000 Bob,25,L…

C++ 侯捷 内存管理

C 的内存获取机制&#xff1a; void* p1 malloc(512); free(p1);complex<int>* p2 new complex<int>; delete p2;void* p3 ::operator new(512); ::operator delete(p3);//GNUC void* p4 alloc::allocate(512); alloc::deallocate(p4, 512);//GNUC4.9 void* p5…

Hbase详解

Hbase 概念 base 是分布式、面向列的开源数据库&#xff08;其实准确的说是面向列族&#xff09;。HDFS 为 Hbase 提供可靠的底层数据存储服务&#xff0c;MapReduce 为 Hbase 提供高性能的计算能力&#xff0c;Zookeeper 为 Hbase 提供稳定服务和 Failover 机制&#xff0c;…

OR-NeRF论文笔记

OR-NeRF论文笔记 文章目录 OR-NeRF论文笔记论文概述Abstract1 Introduction2 Related Work3 Background4 Method4.1 Multiview Segmentation4.2 Scene Object Removal 5 ExperimentsDatasetsMetricsMultiview SegmentationScene Object Removal 6 Conclusion 论文概述 目的&am…

Redis 笔记

文章目录 安装 & 启动杂乱String字符串 key-valueList 有序重复列表Set 无序不重复列表SortedSet 有序集合Hash 哈希Stream 消息队列订阅模式 学习地址&#xff1a;https://www.bilibili.com/video/BV1Jj411D7oG/ 安装 & 启动 安装包地址&#xff1a; https://github.…

【软件工程】漫谈增量过程模型:软件开发的逐步之道

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a; 软件工程 ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言&#xff1a; 正文 增量过程模型&#xff08;Incremental Process Model&#xff09; 主要特点和阶段&#xff1a; 优点&#xff1…

TCP 协议为什么要设计三次握手 TCP 协议,是一种可靠的,基于字节流的,面向连接的传输层协议。

文章目录 TCP 协议为什么要设计三次握手TCP 协议&#xff0c;是一种可靠的&#xff0c;基于字节流的&#xff0c;面向连接的传输层协议。TCP 通信双方的数据传输是通过字节流来实现传输的客户端向服务端发送连接请求并携带同步序列号 SYN。 今天我们来谈谈tcp的三次握手 TCP 协…

C++ dynamic_cast学习

dynamic_cast是将一个基类对象指针(或引用)转换到继承类指针; 可以在执行期决定真正的类型; 与static_cast一样,dynamic_cast的转换也需要目标类型和源对象有一定的关系:继承关系; 更准确的说,dynamic_cast是用来检查两者是否有继承关系; 用法 dynamic_cast <ty…

Vue2+element-ui 实现select选择器结合Tree树形控件实现下拉树效果

效果&#xff1a; DOM部分 &#xff1a; // 设置el-option隐藏的下拉选项&#xff0c;选项显示的是汉字label&#xff0c;值是value // 如果不设置一个下拉选项&#xff0c;下面的树形组件将无法正常使用 <el-form-item label"报警区域" prop"monitorId"…

如何让python在手机上运行,python程序在手机上运行

大家好&#xff0c;给大家分享一下python怎么在手机上运行爱心代码&#xff0c;很多人还不知道这一点。下面详细解释一下。现在让我们来看看&#xff01; 1. 写在前面的话 天天都在PC端运行Python代码的我&#xff0c;今天突然灵光一现&#xff0c;想着是不是能够在移动端运行P…

【STM32】TIM1在电机应用时的注意事项

互补通道OC和OCN的输出极性 OC1和OC1N同时使能的时候&#xff0c;两个才是互补的&#xff0c;OC相对OCREF高电平有效&#xff0c;OCN相对OCREF低电平有效。当OC1或OC1N只选中一个通道&#xff0c;那么就没有互补的概念&#xff0c;都是OCxREF有效时OC或OC1N有效。 举例&#x…

CSS 缩减顶部

<template><!-- mouseenter"startAnimation" 表示在鼠标进入元素时触发 startAnimation 方法。mouseleave"stopAnimation" 表示在鼠标离开元素时触发 stopAnimation 方法。 --><!-- 容器元素 --><div class"container" mou…

通用搜索的工作原理

了解 Google 的通用搜索结果为何如此重要&#xff0c;通用搜索的发展方向&#xff0c;以及它对您意味着什么。 让我们从回答一个显而易见的问题开始&#xff1a; 什么是通用搜索&#xff1f; 网络上有一些通用搜索的定义&#xff0c;但我更喜欢从马的嘴里听到这样的事情。 …

搞懂Vue一篇文章就够了

vue算是小编接触过时间最长的前端框架了&#xff0c;下面来总结一下最实用的知识点&#xff0c;一篇文章从入门到熟练工 目录 一、概念二、常用特性1.拦截器和路由篇1.1 拦截器和路由配置 2.传值篇2.1父子组件互相传值2.2路由跳转传值 3.接口封装3.1 api接口配置 4.组件封装5. …

GO语言工具函数库--Lancet

支持300常用功能的开源GO语言工具函数库–Lancet lancet&#xff08;柳叶刀&#xff09;是一个全面、高效、可复用的go语言工具函数库。lancet受到了java apache common包和lodash.js的启发。 特性 全面、高效、可复用300常用go工具函数&#xff0c;支持string、slice、dateti…

与擎创科技共建一体化“数智”运维体系,实现数字化转型

小窗滴滴小编获取最新版公司简介 前言&#xff1a; 哈喽大家好&#xff0c;最近分享的互联网IT热讯大家都挺喜欢&#xff0c;小编看着数据着实开心&#xff0c;感谢大家支持&#xff0c;小编会继续给大家推送。 新岁即将启封&#xff0c;我们一年一期的运维干货年末大讲也要…