程序语言语法上手题目合集

程序语言语法上手题目合集

  • 1跑步
  • 2猜年龄
  • 3Vigenère 密码

1跑步

2.跑步 - 蓝桥云课

枚举日期,判断是否符合条件即可。

参考程序:

#include<stdio.h> int y=2022,m=1,d=1;
int week=6;
int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};int judg(){if(d%10==1||week==6||week==7)return 1;return 0;
}void f() {int cnt=0;while(y!=2023){++d;++week;if(d>month[m]){m++;d=1;if(m>12){y++;m=1;}}if(week>7){week=1;}cnt+=judg();} printf("%d",cnt);
}int main() {//f();printf("138");return 0;
}

本题是一道填空题,唯一的测试用例是138。

2猜年龄

6.猜年龄 - 蓝桥云课

纯枚举,这个数学王子很年轻,所以年龄不会很大。

#include<stdio.h>
int main() {int cnt[10]={0};//count,计数用 int i=0;for(i=11;i<=36;i++){int a=i*i*i;//立方 int b=a*i;//四次方//统计每一位 while(a!=0){cnt[a%10]++;a/=10; }while(b!=0){cnt[b%10]++;b/=10; }//cnt全是1,则i即为正确答案 int j=0;for(j=0;j<10;j++){if(cnt[j]==1)continue;elsebreak;}if(j==10){printf("%d",i);return 0;}for(j=0;j<10;j++){cnt[j]=0;}}//printf("18");//其实可以把次方数输出,肉眼观察 return 0;
}

这是一道填空题,唯一的测试用例是18。

3Vigenère 密码

NOIP2012 提高组] Vigenère 密码 - 洛谷 | 计算机科学教育新生态

参考程序1:对着表查

这里放张贴图,防止有人不知道怎么看这张表:
请添加图片描述

#include<stdio.h>
#include<string.h>int main(){//生成维吉尼亚表// 维吉尼亚表的实质:table[秘钥][明文] = 密文 char table[26][26]={'\0'};int i=0,j=0;for(i=0;i<26;i++){for(j=0;j<26;j++){table[i][j]=(char)((i+j)%26+'a');}}char key[2001]={'\0'},sec[2001]={'\0'},//秘钥,密文 ans[101]={'\0'},tmp2[1001]={'\0'};scanf("%s",key);scanf("%s",sec);strcpy(ans,key);int lkey=strlen(key),lsec=strlen(sec);//补全秘钥长度 while(lkey<lsec){strcat(key,ans);lkey=strlen(key);}//翻译时统一用小写,并记录密文哪个位置是大写 for(i=0;i<lkey;i++)if(key[i]<'a'){key[i]+='a'-'A';}for(i=0;i<lsec;i++)if(sec[i]<'a'){sec[i]+='a'-'A';tmp2[i]='a'-'A';}//查表for(i=0;i<lsec;i++)for(j=0;j<26;j++)if(table[key[i]-'a'][j]==sec[i]){printf("%c",j+'a'-tmp2[i]);break;}return 0;
}

参考程序2:找规律

样例输入:
CompleteVictory
Yvqgpxaimmklongnzfwpvxmniytm
样例输出:
Wherethereisawillthereisaway

vigenere的实质:
Y=Y-(C-A)=Y-2=W(y往前挪动2个单位)
v=v-(o-a)=v-14=h
q=q-(m-a)=q-12=e
r=g-(p-a)=g-16=a-9,需要加一个26让它重回正轨(相当于是绕回来转一圈)。所以是
r=g-(p-a)+26=g-16+26=a-9+26=a+17=r

#include<stdio.h>
#include<string.h> int main(){char key[2002]={'\0'},sec[2002]={'\0'},tmp[1001]={'\0'};scanf("%s%s",key,sec);int lkey=strlen(key),lsec=strlen(sec);//加长key strcpy(tmp,key);while(lkey<lsec){strcat(key,tmp);lkey=strlen(key);}//转换时字母统一小写 int i=0;for(i=0;i<lkey;i++){if(key[i]<'a'){key[i]+='a'-'A';}}//标记密文的大写字母 for(i=0;i<lsec;i++){if(sec[i]<'a'){sec[i]+='a'-'A';tmp[i]='a'-'A';}else tmp[i]='\0';}for(i=0;i<lsec;i++)printf("%c",(sec[i]-key[i]+'a'<'a'?sec[i]-key[i]+'a'+26:sec[i]-key[i]+'a')-tmp[i]);return 0;
}

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

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

相关文章

【HAProxy11】企业级反向代理HAProxy高级功能之访问控制列表(ACL)

HAProxy 高级功能 介绍 HAProxy 高级配置及实用案例 ACL 访问控制列表&#xff08;ACL&#xff0c;Access Control Lists&#xff09;是一种基于包过滤的访问控制技术&#xff0c;它可以根据设定的条 件对经过服务器传输的数据包进行过滤(条件匹配)&#xff0c;即对接收到的…

C#调用C++ DLL方法之P/Invoke

关于P/Invoke Platform Invoke (P/Invoke) 是 .NET 提供的一种服务&#xff0c;允许托管代码&#xff08;如 C#&#xff09;调用非托管代码&#xff08;如 C/C 编写的 DLL 函数&#xff09;。通过 P/Invoke&#xff0c;可以在 .NET 应用程序中使用现有的非托管代码库&#xff…

Centos Stream 9安装Jenkins-2.485 构建自动化项目步骤

官网&#xff1a;https://www.jenkins.io/ 1 下载 环境准备&#xff1a; 版本支持查询&#xff1a;https://pkg.jenkins.io/redhat-stable/ 安装JDK17&#xff1a;https://blog.csdn.net/qq_44870331/article/details/140784297 yum -y install epel-release wget upgradew…

[C++]:特殊类的设计

1. 不可拷贝类 我们知道&#xff0c;某些资源只能有一个对象持有&#xff0c;拷贝可能导致资源混乱。例如智能指针std::unique_ptr独占管理动态分配对象&#xff0c;文件句柄、网络套接字、数据库连接等资源通常也是独占的&#xff0c;不允许拷贝。 在C11之前&#xff0c;要创…

青训营刷题笔记16

问题描述 小R从班级中抽取了一些同学&#xff0c;每位同学都会给出一个数字。已知在这些数字中&#xff0c;某个数字的出现次数超过了数字总数的一半。现在需要你帮助小R找到这个数字。 测试样例 样例1&#xff1a; 输入&#xff1a;array [1, 3, 8, 2, 3, 1, 3, 3, 3] 输出…

配置 Nebula Graph、 Nebula Graph Studio开机自启动

在 CentOS 中&#xff0c;将 Nebula Graph 和 Nebula Graph Studio 设置为开机自启动&#xff0c;可以按照以下步骤操作&#xff1a; 1. 配置 Nebula Graph 开机自启动 1.1 创建 Systemd 服务文件 在 /etc/systemd/system 目录下创建一个服务文件&#xff0c;例如 nebula.ser…

cocos creator 3.8 物理碰撞器Collider+刚体RigidBody 8

遇到一个朋友&#xff0c;你来就行的朋友&#xff0c;我过去了&#xff0c;管吃管住&#xff0c;这样的朋友真的很难求。 最近离职了&#xff0c;很难想象&#xff0c;一份策划书一天能给你改n次&#xff0c;一周能郁闷&#xff0c;上一个功能没搞完&#xff0c;让你搞下一个功…

【Java从入门到放弃 之 多线程 四】

多线程 四 多线程 四读写锁的使用代码演示 乐观锁的使用代码演示 信号量代码演示 倒计时门禁代码演示 循环栅栏Condition详解代码案例 多线程 四 读写锁的使用 上一篇我们介绍到了可重入锁&#xff0c;现在我们来介绍读写锁。实际上&#xff0c;使用可重入锁的时候我们就可以…

Go语言链接Redis数据库

1.使用go get命令安装go-redis/v8库&#xff1a; 我这里使用的vscode工具安装&#xff1a; go get github.com/go-redis/redis/v82.创建Redis客户端实例 使用以下Go代码连接到Redis服务器并执行命令&#xff1a; package mainimport ("context""fmt"&q…

Mybatis 核心配置文件

MyBatis的全局配置文件mybatis-config.xml&#xff0c;配置内容如下&#xff1a; properties&#xff08;属性&#xff09; settings&#xff08;全局配置参数&#xff09; typeAliases&#xff08;类型别名&#xff09; typeHandlers&#xff08;类型处理器&#xff09; obj…

09 —— Webpack搭建开发环境

搭建开发环境 —— 使用webpack-dev-server 启动Web服务&#xff0c;自动检测代码变化&#xff0c;有变化后会自动重新打包&#xff0c;热更新到网页&#xff08;代码变化后&#xff0c;直接替换变化的代码&#xff0c;自动更新网页&#xff0c;不用手动刷新网页&#xff09; …

TCP vs UDP:如何选择适合的网络传输协议?

在网络通信中&#xff0c;TCP&#xff08;Transmission Control Protocol&#xff09;和UDP&#xff08;User Datagram Protocol&#xff09;是两种非常重要的传输层协议。它们各有特点&#xff0c;适用于不同类型的应用场景。本文将详细探讨TCP和UDP协议的结构、优缺点及应用&…

网络安全之内网安全

下面给出了应对企业内网安全挑战的10种策略。这10种策略即是内网的防御策略&#xff0c;同时也是一个提高大型企业网络安全的策略。 1、注意内网安全与网络边界安全的不同 内网安全的威胁不同于网络边界的威胁。网络边界安全技术防范来自Internet上的攻击&#xff0c;主要是防…

Python学习——字符串操作方法

mystr “hello word goodbye” str “bye” Find函数&#xff1a;检测一个字符串中是否包含另一个字符串,找到了返回索引值&#xff0c;找不到了返回-1 print(mystr.find(str,0,len(mystr))) print(mystr.find(str,0,13)) index函数&#xff1a;检测一个字符串是否包含另一…

sqlite3自动删除数据的两种设置方式记录

文章概要 〇、背景一、基本思路1.1 按时间分多文件,限制文件的个数1.2 按时间分数据表,限制表的个数1.3 按记录的时间删除超过规定时间数据,限制记录数据的时间1.4 按记录的数据条数删除多余的数据,限制记录数据的个数二、实现代码三、测试方式〇、背景 基于嵌入式编程,在…

Spring AI Alibaba-Chat Client

一、ChatClient 简介 ChatClient 提供了与 AI 模型通信的 Fluent API&#xff0c;它支持同步和反应式&#xff08;Reactive&#xff09;编程模型。与 ChatModel、Message、ChatMemory 等原子 API 相比&#xff0c;使用 ChatClient 可以将与 LLM 及其他组件交互的复杂性隐藏在背…

7-2 扑克牌花色

作者 李祥 单位 湖北经济学院 给 52 张扑克牌面编号如下&#xff1a; 编号牌面编号牌面编号牌面编号牌面0♠A13♥A26♣A39♦A1♠214♥227♣240♦22♠315♥328♣341♦33♠416♥429♣442♦44♠517♥530♣543♦55♠618♥631♣644♦66♠719♥732♣745♦77♠820♥833♣846♦88♠9…

windows 中docker desktop 安装

前提条件&#xff1a; 安装wsl2 1. 下载 Docker Desktop 访问 Docker Desktop 官方下载页面。 https://www.docker.com/products/docker-desktop/ 根据你的操作系统架构&#xff08;一般为 Windows x86_64&#xff09;下载安装程序。 选择标准&#xff1a; AMD64 是行业…

初学 flutter 环境变量配置

一、jdk&#xff08;jdk11&#xff09; 1&#xff09;配置环境变量 新增&#xff1a;JAVA_HOMEC:\Program Files\Java\jdk-11 //你的jdk目录 在path新增&#xff1a;%JAVA_HOME%\bin2&#xff09;验证是否配置成功&#xff08;cmd运行命令&#xff09; java java -version …

Linux——进程间通信之管道

进程间通信之管道 文章目录 进程间通信之管道1. 进程间通信1.1 为什么要进行进程间的通信1.2 如何进行进程间的通信1.3 进程间通信的方式 2. 管道2.1 匿名管道2.1.1 系统调用pipe()2.1.2 使用匿名管道进行通信2.1.1 匿名管道四种情况2.1.2 匿名管道的五大特性2.1.3 进程池 2.2 …