首页 > 其他分享 >【C语言入门】第十天

【C语言入门】第十天

时间:2023-10-10 11:09:03浏览次数:45  
标签:numsSize p2 const 入门 nums int C语言 char 第十天

【例题1】1108. IP 地址无效化 - 力扣(LeetCode)

char * defangIPaddr(char * address){
    int len = strlen(address);
    char* p = (char*)malloc(sizeof(char)*len + 6 + 1);
    int i,j;
    for(i=0,j=0;i<len;i++){
        if(address[i]=='.'){
            j +=sprintf(p+j,"%s","[.]");
            //返回值:打印字符的个数
            // p[j++] = '[';
            // p[j++] = '.';
            // p[j++] = ']';
        }else{
            p[j++] = address[i];
        }
    }
    p[len+6] = '\0';
    return p;
}

【例题2】LCR 122. 路径加密 - 力扣(LeetCode)

char* pathEncryption(char* path) {
    int len = strlen(path);
    char* p = (char*)malloc(sizeof(char)*(len+1));
    for(int i=0;i<len+1;i++){
        if(path[i] == '.') p[i] = ' ';
        else p[i] = path[i];
    }
    p[len] = '\0';
    return p;
}

【例题3】1913. 两个数对之间的最大乘积差 - 力扣(LeetCode)

int cmp (const void* p1,const void* p2){
    return *(int*)p1 - *(int*)p2;
}

int maxProductDifference(int* nums, int numsSize){
    qsort(nums,numsSize,sizeof(int),cmp);
    return nums[numsSize-1]*nums[numsSize-2] - nums[0]*nums[1];
}

【例题4】976. 三角形的最大周长 - 力扣(LeetCode)

int cmp(const int* p1,const int* p2){
    return *p2-*p1;
}

int largestPerimeter(int* nums, int numsSize){
    qsort(nums,numsSize,sizeof(int),cmp);
    for(int i=0;i<numsSize-2;i++){
        if(nums[i]<nums[i+1]+nums[i+2]) return nums[i]+nums[i+1]+nums[i+2];
    }
    return 0;
}

【例题5】561. 数组拆分 - 力扣(LeetCode)

int cmp(const int* p1,const int* p2) {
    return *p1-*p2;
}

int arrayPairSum(int* nums, int numsSize){
    qsort(nums,numsSize,sizeof(int),cmp);
    int sum = 0;
    for(int i = 0;i<numsSize;i+=2){
        sum+=nums[i];
    }
    return sum;
}


标签:numsSize,p2,const,入门,nums,int,C语言,char,第十天
From: https://blog.51cto.com/u_16188762/7789262

相关文章

  • c#入门-解构方法
    解构方法解构方法可以让实例能像元组一样被析构,或使用模式匹配的位置模式。解构方法是公开无返回值的,名为Deconstruct的方法。所有参数均为out参数。vara=newTask();var(b,c)=a;classTask{publicvoidDeconstruct(outinta,outintb){a=b=0;}}......
  • Makefile 入门教程
    Makefile是一个非常强大的构建自动化工具,用于管理项目的编译、链接和其他构建任务。以下是一个详细的Makefile使用文档,包括基本概念、语法、示例和常见任务。1.基本概念目标(Targets):在Makefile中,目标是要生成的文件或执行的操作的名称。目标可以是文件名,也可以是伪目标......
  • C语言没人教但必须了解的技巧
    前言工作了一年,对于代码的理解更进了一步,标准且好用的c代码能够使开发效率更上一层楼,这里整理了一下最近看到的一些c代码技巧,能使c代码编写更加标准化。参考文章地址:C语言中常用的宏定义(qq.com)C语言位操作符8个常用的小技巧(qq.com)宏定义类1.防止重复定义防止头文件......
  • 入门篇-其之五-Java运算符(上)
    一元运算符之正负号Java支持多种一元运算符,一元运算符中的“一元”是指一个操作数。我们初中学过的正负号就属于一元运算符,因为正负号后面只有一个数字。正数使用+表示,其中+可以省略;负数使用-表示。如果变量的值是数值类型,也可以在变量前面加上正负号。/***正负号的表示*......
  • 手敲,Ascend算子开发入门笔记分享
    本文分享自华为云社区《Ascend算子开发入门笔记》,作者:JeffDing。基础概念什么是AscendCAscendC是CANN针对算子开发场景推出的编程语言,原生支持C和C++标准规范,最大化匹配用户开发习惯;通过多层接口抽象、自动并行计算、孪生调试等关键技术,极大提高算子开发效率,助力AI开发者......
  • MongoDB下载安装入门
    MongoDB下载安装入门一.MongoDB下载安装mongodb官网下载不了,MongoDB下载、安装、配置、使用,如何下载MongoDB数据库,MongoDB入门-CSDN博客按照文章一→六:安装,下载,环境变量配置等等MongoDBv4.2版安装目录:C:\ProgramFiles\MongoDB\Server\4.2\bin二.安全认证注意!!!一定要......
  • 7、Python语法入门之流程控制
    7、Python语法入门之流程控制转载: 7、Python语法入门之流程控制-知乎(zhihu.com)目录:引子分支结构什么是分支结构为什么要用分支结构如何使用分支结构if语法if应用案例循环结构什么是循环结构为什么要用循环结构如何使用循环结构while循环语......
  • C语言 - malloc与free函数
    C 内存管理本章将讲解C中的动态内存管理。C语言为内存的分配和管理提供了几个函数。这些函数可以在 <stdlib.h> 头文件中找到。在C语言中,内存是通过指针变量来管理的。指针是一个变量,它存储了一个内存地址,这个内存地址可以指向任何数据类型的变量,包括整数、浮点数、字......
  • axios 入门、基本用法
    axiosPromisebasedHTTPclientforthebrowserandnode.jsFeaturesMakeXMLHttpRequestsfromthebrowserMakehttprequestsfromnode.jsSupportsthePromiseAPIInterceptrequestandresponseTransformrequestandresponsedataCancelrequestsAutomatictransfo......
  • PyQT5 PyQT入门教程(之三)
    REFhttp://code.py40.com/pyqt5/22.html 事件Event所有的GUI程序都是事件驱动的。事件主要由用户触发,但也可能有其他触发方式:例如网络连接、windowmanager或定时器。当我们调用QApplication的exec_()方法时会使程序进入主循环。主循环会获取并分发事件。在事件模型中,有三个参与......