当前位置: 首页 > news >正文

卡码网55:右旋字符串

在这里插入图片描述
思路:
和LeetCode151思路类似
①整体翻转
②前k个翻转
③后k个翻转

#include<stdio.h>
#include<string.h>
void reverse(char *s,int L,int R)
{
    int len=R-L+1;
    int j=R;
    for(int i=L;i<L+len/2;i++)
    {
        char tmp=s[i];
        s[i]=s[j];
        s[j--]=tmp;
    }
}
int main()
{
    char str[10000];
    //1.接收字符串和正整数k
    //printf("请输入正整数k\n");
    int k;
    scanf("%d\n",&k);
    //printf("请输入一个字符串:\n");
    fgets(str,sizeof(str),stdin);
    // 去掉末尾的换行符(如果有)
    str[strcspn(str, "\n")] = '\0';
    //2.获取字符串长度
    int len=strlen(str);
    //3.整体翻转
    reverse(str,0,len-1);
    //4.局部翻转
    reverse(str,0,k-1);//前k个
    reverse(str,k,len-1);//后k个
    //3.输出字符串
    printf("%s\n",str);
    return 0;
}

相关文章:

  • 【android bluetooth 框架分析 02】【Module详解 3】【HciHal 模块介绍】
  • 【tRPC-go】message、context相关源码设计思路
  • vue 入门:生命周期
  • 【第16届蓝桥杯C++C组】--- 数位倍数
  • Leetcode:二叉树
  • 简述一下Unity的UnityWebRequest
  • 第二届电气技术与自动化工程国际学术会议 (ETAE 2025)
  • STM32 低功耗模式下 RTC唤醒 和 PA0唤醒 的配合使用
  • HTML — 定位
  • leetcode精选合集(更新中)
  • Istio常用命令
  • kafka4.0浅尝辄止
  • 使用uv管理python项目环境
  • STM32单片机入门学习——第34节: [10-4] I2C通信外设
  • Mysql -- 基础
  • 数据库表的操作
  • Ethers.js 开发入门:核心功能、最佳实践与避坑指南
  • TP8 PHP 支付宝-通用版-V3 SDK 接口加签方式为证书方式
  • 手撕TCP内网穿透及配置树莓派
  • 【DDR 内存学习专栏 1.2 -- DDR Channel 介绍】
  • 经济日报社论:书写新征程上奋斗华章
  • 李乐成任工业和信息化部部长
  • 昆明破获一起算命破灾诈骗案,民警:大师算不到自己的未来
  • 北京朝阳涉住宅组团地块126亿元成交
  • 马上评丨机械停车库成“僵尸库”,设计不能闭门造车
  • 五一假期“热潮”来袭,计划南下的小伙伴注意了