蓝桥杯专题-试题版-【完美的代价】【芯片测试】【序列求和】【杨辉三角形】

news2025/1/13 16:40:50
  • 点击跳转专栏=>Unity3D特效百例
  • 点击跳转专栏=>案例项目实战源码
  • 点击跳转专栏=>游戏脚本-辅助自动化
  • 点击跳转专栏=>Android控件全解手册
  • 点击跳转专栏=>Scratch编程案例
  • 点击跳转=>软考全系列
  • 点击跳转=>蓝桥系列

👉关于作者

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
有什么需要欢迎底部卡片私我,获取更多支持,交流让学习不再孤单

芝麻粒儿-空名先生

👉实践过程

需要所有整理的文档可底部卡片联系我,直接发压缩包。

😜完美的代价

问题描述
  回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。
  交换的定义是:交换两个相邻的字符
  例如mamad
  第一次交换 ad : mamda
  第二次交换 md : madma
  第三次交换 ma : madam (回文!完美!)
输入格式
  第一行是一个整数N,表示接下来的字符串的长度(N <= 8000)
  第二行是一个字符串,长度为N.只包含小写字母
输出格式
  如果可能,输出最少的交换次数。
  否则输出Impossible
样例输入
5
mamad
样例输出
3
#include <stdio.h>

void swap(char* a, char* b)
{
    char c = *a;
    *a = *b;
    *b = c;
}

int find(char* p, char* q)
{
    char* o = q - 1;
    while (o > p && *o != *p) o--;
    return o - p;
}

int rfind(char*p, char* q)
{
    char* o = q + 1;
    while (o < p && *o != *p) o++;
    return p - o;
}

int main()
{
    int i, j, k, len, count[26] = {0};
    char str[8000];
    scanf("%d", &len);
    scanf("%s", str);
    for (i = 0; i < len; i++)
        count[str[i]-'a']++;
    int odd = 0;
    for (i = 0; i < 26; i++)
        if (count[i] % 2 == 1)
            odd++;
    if (odd <= 1)
    {
        int change = 0;
        for (i = 0; i < len / 2; i++)
        {
            if (count[str[i]-'a'] == 1)
                break;
            count[str[i]-'a'] -= 2;
            k = find(str + i, str + len - i);
            for (j = i + k; j < len - i - 1; j++)
            {
                swap(str + j, str + j + 1);
                change++;
            }
        }
        if (i != len / 2)
        {
            for (i = len - i - 1; i > len / 2; i--)
            {
                k = rfind(str + i, str + len - i - 1);
                for (j = i - k; j > len - i - 1; j--)
                {
                    swap(str + j, str + j - 1);
                    change++;
                }
            }
        }
        printf("%d", change);
    }
    else
    {
        printf("Impossible");
    }
    return 0;
}

😜芯片测试

问题描述
  有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多。
  每个芯片都能用来测试其他芯片。用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏。而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关)。
  给出所有芯片的测试结果,问哪些芯片是好芯片。

输入格式
  输入数据第一行为一个整数n,表示芯片个数。
  第二行到第n+1行为n*n的一张表,每行n个数据。表中的每个数据为01,在这n行中的第i行第j列(1≤i, j≤n)的数据表示用第i块芯片测试第j块芯片时得到的测试结果,1表示好,0表示坏,i=j时一律为1(并不表示该芯片对本身的测试结果。芯片不能对本身进行测试)。

输出格式
  按从小到大的顺序输出所有好芯片的编号

样例输入
3
1 0 1
0 1 0
1 0 1
样例输出
1 3
#include <stdio.h>

int main()
{
    int i, j, k, l, n, a[20][20], b[20] = {0}, c[20] = {0};
    scanf("%d", &n);
    for (i = 0; i < n; i++)
        for (j = 0; j < n; j++)
            scanf("%d", &a[i][j]);
    l = 1;
    for (i = 0; i < n; i++)
    {
        if (b[i] != 0)
            continue;
        b[i] = l++;
        for (j = i + 1; j < n; j++)
        {
            if (b[j] != 0)
                continue;
            for (k = 0; k < n; k++)
                if (a[i][k] != a[j][k])
                    break;
            if (k == n)
                b[j] = b[i];
        }
    }
            
    int max = 0;
    for (i = 0; i < n; i++)
        c[b[i]]++;
    for (i = 0; i < l; i++)
        if (c[max] < c[i])
            max = i;
    for (i = 0; i < n; i++)
        if (max == b[i])
            printf("%d ", i + 1);  
     
    return 0;
}

😜序列求和

问题描述
求1+2+3+...+n的值。

输入格式
输入包括一个整数n。

输出格式
输出一行,包括一个整数,表示1+2+3+...+n的值。

样例输入
4
样例输出
10

样例输入
100
样例输出
5050

数据规模与约定
1 <= n <= 1,000,000,000
#include <stdio.h>

int main()
{
    long long n, sum;
    scanf("%I64d", &n);
    sum = (n + 1) * n / 2;
    printf("%I64d", sum);
    return 0;
}

😜杨辉三角形

问题描述
杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。
它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。
  
下面给出了杨辉三角形的前4行:
   1
  1 1
 1 2 1
1 3 3 1
给出n,输出它的前n行。

输入格式
输入包含一个数n。

输出格式
输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。

样例输入
4
样例输出
1
1 1
1 2 1
1 3 3 1

数据规模与约定
1 <= n <= 34
#include <stdio.h>

int main()
{
    int i, j, n, a[34][34];
    scanf("%d", &n);
    for (i = 0; i < n; i++)
    {
        a[i][0] = 1;
        a[i][i] = 1; 
        for (j = 1; j < i; j++)
            a[i][j] = a[i-1][j-1] + a[i-1][j];
    }
    for (i = 0; i < n; i++)
    {
        for (j = 0; j <= i; j++)
            printf("%d ", a[i][j]);
        printf("\n");
    }
    return 0;
}

👉其他

📢作者:小空和小芝中的小空
📢转载说明-务必注明来源:https://zhima.blog.csdn.net/
📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。

温馨提示点击下方卡片获取更多意想不到的资源。
空名先生

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/693668.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Jmeter分布式压测配置

目录 前置条件 环境部署并使用 前置条件 电脑A&#xff0c;电脑B&#xff0c;电脑C均安装相同版本的JMeter 和JDK。其中电脑A作为控制机&#xff0c;电脑B和电脑C作为施压机 电脑A IP&#xff1a;172.16.0.114 电脑B IP&#xff1a;172.16.0.115 电脑C IP&#xff1a;172…

PLC通讯协议【三菱】FX协议的报文格式和读写示例

通过编程口通讯协议,具体可操作的软元件有:X/Y/M/S/T/C/D。 通讯设置 必须设置为:波特率9600,偶校验,7位数据位,1停止位。否则无法通讯。 一、报文结构 注意: 通讯协议中的所有字符是用它们的十六进制ASCII码表示。如果有十进制数据,要先转化为十六进制数,再把十六进制…

数据挖掘算法常用四大类

一、常用算法有哪四大类 既然我们知道数据挖掘的算法是为了寻找数据中潜在的知识&#xff0c;那么数据挖掘的算法通常都有哪些类型呢&#xff1f;如果说按照这些算法所解决的问题来进行划分&#xff0c;大致可以分为分类问题、聚类问题、回归问题和关联分析问题。下面我们就来…

chatgpt赋能python:如何使用Python读取手机短信

如何使用Python读取手机短信 在现代社会&#xff0c;短信已成为人们生活中不可或缺的一部分。那么&#xff0c;如何利用Python读取手机短信呢&#xff1f;本文将介绍如何使用Python读取手机短信&#xff0c;并提出一些相关的建议。 什么是Python Python是一种高级的、开源的…

高并发系统设计40问

01 | 高并发系统&#xff1a;它的通用设计方法是什么&#xff1f; 三种方法&#xff1a; Scale-out&#xff08;横向扩展&#xff09;&#xff1a;分而治之是一种常见的高并发系统设计方法&#xff0c;采用分布式部署的方式把流量分流开&#xff0c;让每个服务器都承担一部分并…

隐藏cobaltstrike服务器-nginx反向代理

隐藏nginx版本 编辑/etc/nginx/nginx.conf 取消server_tokens off 前面的注释 http转发80端口 编辑/etc/nginx/sites-enabled/default ## # You should look at the following URLs in order to grasp a solid understanding # of Nginx configuration files in order to …

【kubernetes系列】Kubernetes之RC、RS和Deployment

在实际的工作中&#xff0c;我们使用Kubernetes 通常不会直接创建 Pod&#xff0c;而是通过 各种 Controller 来管理 Pod 的。Controller 中定义了 Pod 的部署特性&#xff0c;比如有几个副本&#xff0c;在什么样的 Node 上运行等。为了满足不同的业务场景&#xff0c;Kuberne…

C++之thread的简单使用示例

1、全局函数传入thread #include <iostream> #include <thread> #include <string>void threadWork(std::string content, int counts) {for (int i 0; i < counts; i) {std::cout << content << i << std::endl;} }int main() {std:…

node-sass报错

我们安装vue项目时&#xff0c;经常遇到nade-sass报错。然后切换到某个node版本后不再报错&#xff0c;原因见下文 一&#xff1a;报错内容 二&#xff1a;保存原因 本地nodejs版本跟安装的node-sass版本不一致 三&#xff1a;解决办法 1、查看本地node版本 node -v 2、查…

ECCV2020-FRELU

论文链接&#xff1a;https://arxiv.org/pdf/2007.11824.pdf 官方代码&#xff1a;GitHub - megvii-model/FunnelAct paddle复现版本&#xff1a;FReLU&#xff1a;简单高效的新型激活函数 - 飞桨AI Studio torch复现版本&#xff1a;GitHub - nekitmm/FunnelAct_Pytorch: py…

Word中论文参考文献完美对齐方法

1、首先&#xff0c;我们从知网、谷歌学术或其他网站找到我们需要引用的参考文献&#xff0c;如果你设置了自动编号&#xff0c;请先删除前面的自动编号。 2、我们手动在前面加上[1]、[2]等编号&#xff0c;注意都是英文符号&#xff0c;且没有空格。 3、我们光标放到编号后面…

【教学类-36-03】midjounery-niji表情包图片的矩阵式切割(3*3)及GIF制作过程

作品展示 背景需求&#xff1a; 学习midjounery-niji表情包制作&#xff0c;先用关键词生成了一张3*3的熊猫多种表情图矩阵式样 选第3张&#xff0c;放大&#xff0c;另存为“熊猫9张图” 需要&#xff1a; 把这张PNG图片切成9张同样大的小图&#xff0c;便于生成GIF动图。 图…

QT ObjectThread moveToThread多线程操作

QT多线程专栏共有15篇文章&#xff0c;从初识线程到、QMutex锁、QSemaphore信号量、Emit、Sgnals、Slot主线程子线程互相传值同步变量、QWaitCondition、事件循环、QObjects、线程安全、线程同步、线程异步、QThreadPool线程池、ObjectThread多线程操作、 moveToThread等线程操…

我的项目--初始设计

PYQT 界面1. 表&#xff1a;USER ADD键&#xff1a;USER表添加一条记录 界面2&#xff1a;

【数据结构与算法】5、循环链表、约瑟夫问题、静态链表

循环链表目录 一、单向循环链表(1) add()(2) remove()(3) 单向循环链表特点 二、双向循环链表三、约瑟夫问题&#xff08;Josephus Problem&#xff09;四、静态链表 一、单向循环链表 &#x1f33f; 单向循环链表在单链表的基础上&#xff0c;尾节点的 next 指向头节点 (1) a…

欺诈无所遁形:反欺诈(羊毛盾)API 应用解析

随着互联网的快速发展&#xff0c;欺诈行为不断演变和扩大&#xff0c;涉及的领域也越来越广泛。虚假账户注册、刷单、恶意评论、虚假广告等欺诈手段成为一些不法分子获取利益的途径。这些行为不仅损害了用户的利益&#xff0c;也对在线平台的声誉和可信度造成了威胁。为了解决…

为什么推荐用易模来制作真人手办所需的人像模型?

要问最近什么手办最流行&#xff0c;真人手办必须拥有姓名。大家看腻了传统的动漫以及游戏的周边手办以后&#xff0c;想要玩出点新花样&#xff0c;于是纷纷把眼光放到真人的身上&#xff0c;真人手办开始应运而生。 现阶段制作真人手办通常都是线下来进行&#xff0c;需要消费…

Docker安装pritunl

Background Pritunl是一款图形化的OpenVPN软件&#xff0c;提供一个友好的图形WebUI界面&#xff0c;对传统OpenVPN服务端与客户端复杂的安装配置流程进行了极大的简化&#xff0c;并且通过图形界面可以进行人员管理、参数配置&#xff0c;给予用户非常大的便捷性&#xff0c;适…

【运维】Windows 通过注册表禁用服务

【运维】Windows 通过注册表禁用服务 以这个服务为例子 Windows Push Notifications User Service 双击查看服务名称 WpnUserService_671f3 打开注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\{服务名称} HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Ser…

网络基础一:网络协议初识与网络传输基本流程

目录 网络协议认识“协议”网络协议初识协议分层OSI七层模型&#xff08;理论模型&#xff09;TCP/IP五层(或四层)模型&#xff08;工程实现模型&#xff09; 网络中的地址管理MAC地址IP地址 网络传输基本流程路由的本质 数据包封装和分用网络协议需要解决的问题 网络协议 计算…