专栏首页Zaqdt_ACMCodeForces 938A Word Correction

CodeForces 938A Word Correction

      题意是输入长度为n的字符串,如果'a''e''i''o''u''y'这些字母中有两个是相连的,就删除后面的那一个,然后输出最后的结果。我的思路就是开一个标记数组,先把这六个字母标记出来,然后再遍历一遍,把相连的字母的后一个再另外标记一下,然后输出结果。后来看了别人的代码,感觉更简练,值得学习。

AC代码:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
const int MAXN = 100005;
char str[MAXN];
int vis[MAXN];
int n;
int check(char a){
  return (a=='a' || a=='e' || a=='i' || a=='o' || a=='u' || a=='y');
}
int main()
{
  char ch;
  memset(vis,0,sizeof(vis));
  scanf("%d%s",&n,str);
  for(int i=0;i<n;i++){
    if(check(str[i]))vis[i] = 1;
  }
  for(int i=1;i<n;i++){
    if(check(str[i]) && vis[i-1] ){
      vis[i] = 2;
    }
  }
  for(int i=0;i<n;i++){
    if(vis[i] != 2){
      printf("%c",str[i]);
    }
  }
  printf("\n");
  return 0;
}

       然后看一下别人的方法,这种方法直接一次遍历输出就好了,节省了很多时间,那个输入的是s+1,表示是从s[1]开始输入字符,这样的目的是为了输出第一个字母(第一个字母肯定是删除不掉的),因为s[0]是空字符,然后判断一下就可以把第一个字符输出来了。

AC代码:

#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
int n;
char s[10000];
bool check(char c){
	return c=='a'||c=='e'||c=='i'||c=='o'||c=='u'||c=='y';
}

int main()
{
	scanf("%d%s",&n,s+1);
	for(int i=1;i<=n;++i)
        if(!check(s[i])||!check(s[i-1]))
            printf("%c",s[i]);
  printf("\n");
  return 0;
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Codeforces Round #544 (Div. 3) F1. Spanning Tree with Maximum Degree(bfs)

    题目链接:http://codeforces.com/contest/1133/problem/F1

    Ch_Zaqdt
  • HDU 1035 Robot Motion(dfs)

           题意就是输入n*m的地图,然后输入p,表示这个机器人从(1,p)这个点为起点,然后至于机器人怎么走应该不用解释了吧,判断的终点就是走出地图,这里我...

    Ch_Zaqdt
  • CodeForces 954A Diagonal Walking

            题意是给一个长度为n的字符串,然后要缩短这个字符串,字符串中UR或者RU的长度可以缩为1,求最短长度。

    Ch_Zaqdt
  • P1865 A % B Problem

    题目背景 题目名称是吸引你点进来的 实际上该题还是很水的 题目描述 区间质数个数 输入输出格式 输入格式: 一行两个整数 询问次数n,范围m 接下来n行...

    attack
  • 智能合约安全审计之路-拒绝服务漏洞

    核心问题:智能合约中的拒绝服务是一个致命的漏洞,因为漏洞导致的拒绝服务一般为永久性的,无法恢复

    字节脉搏实验室
  • 失之毫厘谬以千里,Nginx配置中一个不起眼字符"/"的巨大作用

    Nginx作为一个轻量级的,高性能的web服务软件,因其占有内存少,并发能力强的特点,而广受欢迎和使用。国内很多大型互联网公司也对Nginx很是青睐。像BAT(...

    DevOps持续交付
  • 高能!8段代码演示Numpy数据运算的神操作

    Numpy是Numerical Python extensions 的缩写,字面意思是Python数值计算扩展。Numpy是Python中众多机器学习库的依赖,...

    华章科技
  • Python控制Word文件中段落格式与文本格式

    本文主要介绍扩展库python-docx中关于Word文件中文本格式控制的接口和用法,可以使用命令pip install python-docx安装,然后通过名...

    Python小屋屋主
  • C+实现神经网络之三—神经网络的训练和测试

    前言 在之前的博客中我们已经实现了Net类的设计和前向传播和反向传播的过程。可以说神经网络的核心的部分已经完成。接下来就是应用层面了。要想利用神经网络解决实际的...

    企鹅号小编
  • 简单明了,一文入门视觉SLAM

    【导读】SLAM是“Simultaneous Localization And Mapping”的缩写,可译为同步定位与建图。最早,SLAM 主要用在机器人领域...

    AI科技大本营

扫码关注云+社区

领取腾讯云代金券