C语言,洛谷题,压缩技术2.0

这篇具有很好参考价值的文章主要介绍了C语言,洛谷题,压缩技术2.0。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

题目如下:

C语言,洛谷题,压缩技术2.0,c语言

 这题用C语言实现有一些难度,要用到一个库函数,strcat(头文件是string.h),用于连接两个字符串数组,strcat(str,arr)就是将arr字符数组后面的\0清除,再将arr字符拼接到str上。

#include <stdio.h>
#include <string.h>
int main()
{
	char str[200] = { 0 };
	char arr[200] = { 0 };
	scanf("%s", arr);
	int n = strlen(arr);
	strcat(str, arr);
	int i = 0;
	for (i = 2; i <= n; i++)
	{
		scanf("%s", arr);
		strcat(str, arr);
	}
	printf("%d ", n);
	char* p = str;
	char ch = *p;
    int count = 0;
	while (*p != '\0')
	{
		if (*p == ch)
		{
			count++;
		}
		if (*p != ch)
		{
			printf("%d ", count);
			count = 1;
			ch = *p;
		}
		p++;
	}
	printf("%d ", count);
	return 0;
}

题目指出,输入的是一个n*n大小的输入数据,可以先打印第一行后,计算第一行后,计算第一行的字符串长度,第一行的字符串长度就是n的值。用循环输入接下来的内容时i要从2开始,因为第一行在求n的值的时候,就已经被拼接到str里面了。

ch记录的是str首元素的内容,在元素未发生变化时,会一直记录后面和ch一样元素的个数。当元素发生变化时ch就会变成变化后的元素,继续计算接下来连续元素的个数。注意当ch发生变化时,count同样要加一,因为变化后的这个元素也属于连续元素。

p++即指向的数组元素下标加一,即p指向下一个元素。文章来源地址https://www.toymoban.com/news/detail-726412.html

到了这里,关于C语言,洛谷题,压缩技术2.0的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 洛谷题单--算法[2-1] 前缀和、差分与离散化

    目录 0.铺垫学习:p1115最大子段和--前缀和+贪心+DP 1.p1719最大加权矩形--前缀和+贪心+DP+矩阵压缩 原题链接: P1115 最大子段和 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 原题: 题目描述 给出一个长度为 n 的序列 a,选出其中连续且非空的一段使得这段和最大。 输入格式 第

    2024年02月22日
    浏览(30)
  • 洛谷题单算法1-1模拟与高精度

    发文章只是为了督促自己做题,双非大二刚转科班的菜菜一枚,代码仅供参考,不足之处望理解。         这题太恶心了,看完题解发现三种情况没有考虑,后来给补上了,我的 if-else 思路可能写的不太好,但是能过         注意结构体在函数中的传参(下学期c语言II要好

    2024年02月19日
    浏览(32)
  • Vue 2.0 前端使用 ffmpeg 压缩视频

    1. (我之前因为直接装了导致报错)  要安装这个版本 npm install @ffmpeg/ffmpeg@0.10.1 -S npm install @ffmpeg/core@0.10.0 -S 2.找到vue.config.js devServer: {      headers: {       \\\"Cross-Origin-Opener-Policy\\\": \\\"same-origin\\\",       \\\"Cross-Origin-Embedder-Policy\\\": \\\"require-corp\\\",     }, } 加上红色这段代码 3

    2024年02月09日
    浏览(31)
  • 洛谷-【入门3】循环结构——C语言

    题目描述 给出n和n个整数ai,求这n个整数中最小值是什么。 输入格式 第一行输入一个正整数n,表示数字个数。 第二行输入n个非负整数,表示a1,a2…an,以空格隔开。 输出格式 输出一个非负整数,表示这n个非负整数中的最小值。 输入 #1 输出 #1 题目描述 给定n和k,将从1到

    2024年02月06日
    浏览(31)
  • 洛谷P1614 爱与愁的心痛(C语言)

     

    2024年01月19日
    浏览(31)
  • 洛谷P5732 【深基5.习7】杨辉三角(C语言)

     入门递推题,就算你不是OIer也该知道的杨辉三角 同时这也是 组合数 的公式,很重要,因为常规组合数公式是阶乘运算会爆,而这个就不怎么会了 赋 arr[i][j]初值1,接下来就可以递推了

    2024年01月20日
    浏览(29)
  • 等保测评2.0技术要求

    2023年等保2.0测评技术要求 一、技术要求: 1.供应商应把握和理解国家对该类项目的具体要求,对等级保护2.0相关政策标准本身有较深的认识。 2.供应商组建的测评组须至少配备4 名测评师,测评组长应为高级测评师。测评组至少包括 1名高级测评师和 1名中级测评师。 3.供应

    2024年02月14日
    浏览(34)
  • 2023年等保2.0测评技术要求

    2023年等保2.0测评技术要求 一、技术要求: 1.供应商应把握和理解国家对该类项目的具体要求,对等级保护2.0相关政策标准本身有较深的认识。 2.供应商组建的测评组须至少配备4 名测评师,测评组长应为高级测评师。测评组至少包括 1名高级测评师和 1名中级测评师。 3.供应

    2024年02月15日
    浏览(30)
  • 洛谷P8772 [蓝桥杯 2022 省 A] 求和 C语言/C++

    给定 n n n 个整数 a 1 , a 2 , ⋯   , a n a_{1}, a_{2}, cdots, a_{n} a 1 ​ , a 2 ​ , ⋯ , a n ​ , 求它们两两相乘再相加的和,即 S = a 1 ⋅ a 2 + a 1 ⋅ a 3 + ⋯ + a 1 ⋅ a n + a 2 ⋅ a 3 + ⋯ + a n − 2 ⋅ a n − 1 + a n − 2 ⋅ a n + a n − 1 ⋅ a n S=a_{1} cdot a_{2}+a_{1} cdot a_{3}+cdots+a_{1} cdot a_{n}+a_{2}

    2023年04月14日
    浏览(28)
  • CNStack 2.0:云原生的技术中台

    在进入千禧年后,随着计算机技术的发展和业务创新的不断涌现,许多大公司内的 IT 计算中心也在酝酿着变革。一方面,各部门相对独立的 IT 管理平台已经难以满足日益增长和不断变化的计算管理需求;另一方面,IT 计算中心也越来越多的成为业务创新的发源地,从一个成

    2024年02月13日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包