【C语言刷力扣】1678.设计Goal解析器

题目:

解题思路:

遍历分析每一个字符,对不同情况分别讨论。

  • 若是字符 G ,则 res 中添加字符 G
  • 若是字符 ,则再分别讨论。
    • 若下一个字符是 , 则在 res 末尾添加字符 o

    • 若下一个字符是 a , 则在 res 末尾添加字符 al

      char * interpret(char * command){
      char* res = (char*) malloc(sizeof(char) * (strlen(command) + 1));
      int num = 0;
      for (int i = 0; i < strlen(command); i++) {
      if (command[i] == 'G') {
      res[num] = 'G';
      num++;
      }
      else if (command[i] == '(') {
      if (command[i+1] == ')') {
      res[num] = 'o';
      num++;
      }
      else {
      res[num] = 'a';
      res[num+1] = 'l';
      num += 2;
      }
      }
      }
      res[num] = '\0';
      return res;
      }

相关推荐
谷雨不太卷4 小时前
进程的状态码
java·前端·算法
凉茶钱4 小时前
【c语言】动态内存管理:malloc,calloc,realloc,柔性数组
c语言·c++·vscode·柔性数组
散峰而望4 小时前
【算法竞赛】C/C++ 的输入输出你真的玩会了吗?
c语言·开发语言·数据结构·c++·算法·github
小龙报4 小时前
【C语言】内存里的 “数字变形记”:整数三码、大小端与浮点数存储真相
c语言·开发语言·c++·创业创新·学习方法·visual studio
躺不平的理查德4 小时前
时间复杂度与空间复杂度备忘录
数据结构·算法
yaki_ya4 小时前
yaki-C语言:从概念基础到内存解析---数组(array)完全指南
java·c语言·算法
刃神太酷啦4 小时前
扒透 STL 底层!map/set 如何封装红黑树?迭代器逻辑 + 键值限制全手撕----《Hello C++ Wrold!》(23)--(C/C++)
java·c语言·javascript·数据结构·c++·算法·leetcode
星辰徐哥4 小时前
C语言网络编程:TCP、UDP、HTTP深度解析
c语言·网络·tcp/ip
2301_789015624 小时前
C++:继承
c语言·开发语言·c++
挽星安5 小时前
代码随想录算法训练营第五十天|卡码网 99 岛屿数量、卡码网 100 最大岛屿的面积
算法