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

fgets、scanf存字符串应用

题目1

夺旗(英语:Capture the flag,简称 CTF)在计算机安全中是一种活动,当中会将“旗子”秘密地埋藏于有目的的易受攻击的程序或网站。参赛者从其他参赛者或主办方偷去旗子。

非常崇拜探姬的小学妹最近迷上了 CTF,学长给了她一个压缩包,让她找到其中的 flag 并提交。

她今天终于破解了压缩包的密码,但解压后她却发现,里面竟然有足足 100 个 txt 文件!她使用 Ctrl+F 大法搜索过后,发现了这些 txt 文件里面有着相同的规律:

每个 txt 文件中都藏着一个 flag,这些 flag 都有固定的格式,即 flag + 一个两位十进制数 + 真正的 flag 内容,其中这个两位十进制数代表 真正的 flag 内容 的长度。

例如,在 flag03ctf 中,flag 后的两位十进制数 03 表示 真正的 flag 内容 的长度为 3 个字符,此时 真正的 flag 内容 就是 ctf,所以你需要提交 flag{ctf}

小学妹苦于自己能力不足,于是她拜托你帮她找出文件中的 flag 

输入描述

先输入一行一个正整数 n (1≤n≤10^{5}),表示接下来字符串的长度。

然后输入一个长度为 n 的字符串 s,表示某个 txt 文件中的文本内容。

不保证给定的字符串 s 中只包含一个 flag 串,但你只需要输出你找到的第一个 flag 即可。

保证字符串 s 中不含空格,且第一个 flag 一定合法。

输出描述

输出一行一个字符串 t,表示破译出来的 flag,格式为 flag{真正的 flag 内容}(如样例所示)

样例输入 1

9
flag03ctf

样例输出 1

flag{ctf}

样例输入 2

25
tjjjctfctflag05hellozzuli

样例输出 2

flag{hello}

代码长度限制    16 KB

时间限制            1000 ms

内存限制            256 MB

栈限制                131072 KB

#include <stdio.h>
#include <string.h>
int main()
{int n;scanf("%d\n",&n);char str[n+1];//gcc申请n-4有的答案错误  clang没有// fgets(str,n+1,stdin);//中间必须是n+1 接收n个字符 //fgets可以存入回车符 用strlen不用加\0scanf("%s",str);//PTA申请str[n-4]个也全对   不存入回车符 不用加\0int num=0;for (int i=0;i<n+1;i++){if (str[i]=='f' && str[i+1] == 'l' && str[i+2]=='a' && str[i+3]=='g'){num = (str[i+4]-'0')*10 + str[i+5]-'0';int top=0;for (int j=i+6;j<num+i+6;j++)str[top++] = str[j];break;}}printf("flag{");//,strlen(str)两个都一样申请少空间也会按照n+1打印for (int i=0;i<num;i++)printf("%c",str[i]);printf("}\n");
}

题目2

输入格式:

一个整数 x,用二进制表示。

输出格式:

一个整数, x×43 的二进制表示,注意不能包含前导零。

输入样例:

1

输出样例:

1000000

数据范围:

0≤n≤100,保证无前导零。

 代码:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{char x[101];int ans;fgets(x,101,stdin);//itoa(x,ans,2);无法识别??可能是Linuxint len=strlen(x),i=0;while(x[i]=='0')i++;if(i==len){printf("0");return 0;}while(i!=len){if (x[i]=='0' || x[i]=='1')//防止输入中有回车符printf("%c",x[i]);i++;}printf("000000");
}

相关文章:

fgets、scanf存字符串应用

题目1 夺旗&#xff08;英语&#xff1a;Capture the flag&#xff0c;简称 CTF&#xff09;在计算机安全中是一种活动&#xff0c;当中会将“旗子”秘密地埋藏于有目的的易受攻击的程序或网站。参赛者从其他参赛者或主办方偷去旗子。 非常崇拜探姬的小学妹最近迷上了 CTF&am…...

鸿蒙动态路由实现方案

背景 随着CSDN 鸿蒙APP 业务功能的增加&#xff0c;以及为了与iOS、Android 端统一页面跳转路由&#xff0c;以及动态下发路由链接&#xff0c;路由重定向等功能。鸿蒙动态路由方案的实现迫在眉睫。 实现方案 鸿蒙版本动态路由的实现原理&#xff0c;类似于 iOS与Android的实…...

Spring-boot3.4最新版整合swagger和Mybatis-plus

好家伙,今天终于开始用spring-boot3开始写项目了&#xff0c;以后要彻底告别1.x和2.x了&#xff0c;同样的jdk也来到了最低17的要求了,废话不多说直接开始 这是官方文档的要求jdk最低是17 maven最低是3.6 一. 构建工程,这一步就不需要给大家解释了吧 二. 整合Knife4j 1.大于…...

基于Java的高校实习管理平台

基于Java的高校实习管理平台是一个专为高校设计的信息化管理工具&#xff0c;旨在通过信息化手段简化实习管理流程&#xff0c;提高管理效率&#xff0c;增强学校、企业与学生之间的沟通与协作。&#xff1a; 一、系统背景与意义 随着教育体系的不断完善和就业市场的日益竞争…...

全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之一维数组(应用技巧)

二、一维数组应用技巧2&#xff1a;打标记 实战训练1—开关灯 问题描述&#xff1a; 有 M个从1到M依次编号的人参加一项游戏。将K 盏从1到K依次编号的灯(K和M均为正整数&#xff0c;M≤K≤5000)进行一系列的熄灭与打开的操作&#xff0c;游戏开始时均处于亮灯的状态&#xf…...

【2024年华为OD机试】 (B卷,100分)- 路灯照明问题(Java JS PythonC/C++)

一、问题描述 路灯照明问题 题目描述 在一条笔直的公路上安装了 ( N ) 个路灯&#xff0c;从位置 0 开始安装&#xff0c;路灯之间间距固定为 100 米。每个路灯都有自己的照明半径。请计算第一个路灯和最后一个路灯之间&#xff0c;无法照明的区间的长度和。 输入描述 第一…...

SVGAPlayer error 处理

提示错误 Call to undeclared function OSAtomicCompareAndSwapPtrBarrier; ISO C99 and later do not support implicit function declarations Conflicting types for OSAtomicCompareAndSwapPtrBarrier Declaration of OSAtomicCompareAndSwapPtrBarrier must be imported …...

2024年12月电子学会青少年机器人技术等级考试(二级)实际操作试卷

2024.12 青少年机器人技术等级考试&#xff08;二级&#xff09;实际操作试卷 一、多选题 第 1 题 关于后轮驱动车说法正确的有哪些&#xff1f;&#xff08; &#xff09; A.起步加速表现比前轮驱动好 B.容易转向过度 C.车身重量比前轮驱动更均衡 D.造价比前轮驱动车更高…...

Swift 专题二 语法速查

一 、变量 let, var 变量是可变的&#xff0c;使用 var 修饰&#xff0c;常量是不可变的&#xff0c;使用 let 修饰。类、结构体和枚举里的变量是属性。 var v1:String "hi" // 标注类型 var v2 "类型推导" let l1 "标题" // 常量class a {…...

Api网关Zuul

网关分类与开放API 开放API (OpenAPI) 企业需要将自身数据、能力等作为开发平台向外开放&#xff0c;通常会以REST的方式向外提供&#xff0c;最好的例子就是淘宝开放平台、腾讯公司的QQ开发平台、微信开放平台。开放API平台必然涉及到客户应用的接入、API权限的管理、调用次数…...

01设计模式(D3_设计模式类型 - D3_行为型模式)

目录 一、模版方法模式 1. 基本介绍 2. 应用案例一&#xff1a;豆浆制作问题 需求 代码实现 模板方法模式的钩子方法 3. View的draw&#xff08;Android&#xff09; Android中View的draw方法就是使用了模板方法模式 模板方法模式在 Spring 框架应用的源码分析 知识小…...

python编程-OpenCV(图像读写-图像处理-图像滤波-角点检测-边缘检测)角点检测

角点检测&#xff08;Corner Detection&#xff09;是计算机视觉和图像处理中重要的步骤&#xff0c;主要用于提取图像中的关键特征&#xff0c;以便进行后续的任务&#xff0c;比如图像匹配、物体识别、运动跟踪等。下面介绍几种常用的角点检测方法及其应用。 1. Harris角点检…...

费解的开关

费解的开关 你玩过“拉灯”游戏吗&#xff1f; 25 盏灯排成一个 55 的方形。 每一个灯都有一个开关&#xff0c;游戏者可以改变它的状态。 每一步&#xff0c;游戏者可以改变某一个灯的状态。 游戏者改变一个灯的状态会产生连锁反应&#xff1a;和这个灯上下左右相邻的灯也…...

【机器学习】机器学习引领数学难题攻克:迈向未知数学领域的新突破

我的个人主页 我的领域&#xff1a;人工智能篇&#xff0c;希望能帮助到大家&#xff01;&#xff01;&#xff01;&#x1f44d;点赞 收藏❤ 一、引言 在数学的浩瀚领域中&#xff0c;存在着诸多长期未解的难题&#xff0c;这些难题犹如高耸的山峰&#xff0c;吸引着无数数…...

Qt之QDjango-db的简单使用

QDjango是一款由C编写、依托于Qt库的Web开发框架&#xff0c;其设计理念受到了广受欢迎的Python框架Django的影响。这个项目旨在提供一个高效、灵活且易于使用的工具集&#xff0c;帮助开发者构建高质量的Web应用。其项目地址: https://gitcode.com/gh_mirrors/qd/qdjango&…...

缓存、数据库双写一致性解决方案

双写一致性问题的核心是确保数据库和缓存之间的数据同步&#xff0c;以避免缓存与数据库数据不同步的问题&#xff0c;尤其是在高并发和异步环境下。本文将探讨双写一致性面临的主要问题和解决方案&#xff0c;重点关注最终一致性。 本文讨论的是最终一致性问题 双写一致性面…...

SUnet: A multi-organ segmentation network based on multiple attention【医学图像分割】

一、论文信息 1.1、中文名称 名称&#xff1a;SUnet&#xff1a;基于多重注意力的多器官分割网络 1.2、论文关键词 医学图像分割、Transformer、注意力机制、高效特征融合模块 1.3、核心概述 本文提出了一种新颖有效的医学图像分割方法 SUnet&#xff0c;用于腹部和胸部的多…...

uniapp实现“到这儿去”、拨打电话功能

"到这儿去" 在 UniApp 中实现“到这儿去”的功能,即调起地图导航至指定位置,对于不同的平台(小程序、H5、App)有不同的处理方式。下面将简单介绍如何在这些平台上实现该功能,并讨论位置信息的获取。后面需求会用到,先来找一些相关资料,并不一定很准确,但也来…...

2025年入职/转行网络安全,该如何规划?网络安全职业规划

网络安全是一个日益增长的行业&#xff0c;对于打算进入或转行进入该领域的人来说&#xff0c;制定一个清晰且系统的职业规划非常重要。2025年&#xff0c;网络安全领域将继续发展并面临新的挑战&#xff0c;包括不断变化的技术、法规要求以及日益复杂的威胁环境。以下是一个关…...

【博客之星】2024年度个人成长、强化学习算法领域总结

&#x1f4e2;在2025年初&#xff0c;非常荣幸能通过审核进入到《2024年度CSDN博客之星总评选》TOP300的年度评选中&#xff0c;排名40。这还是第一次来到这个阶段&#xff0c;作为一名博士研究生&#xff0c;还是备受鼓舞的。在这里我将以回顾的方式讲述一下这一年在CSDN中走过…...

Android Wi-Fi 连接失败日志分析

1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分&#xff1a; 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析&#xff1a; CTR…...

Cursor实现用excel数据填充word模版的方法

cursor主页&#xff1a;https://www.cursor.com/ 任务目标&#xff1a;把excel格式的数据里的单元格&#xff0c;按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例&#xff0c;…...

CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型

CVPR 2025 | MIMO&#xff1a;支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题&#xff1a;MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者&#xff1a;Yanyuan Chen, Dexuan Xu, Yu Hu…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异&#xff0c;它们的数据同步要求既要保持数据的准确性和一致性&#xff0c;又要处理好性能问题。以下是一些主要的技术要点&#xff1a; 数据结构差异 数据类型差异&#xff…...

IT供电系统绝缘监测及故障定位解决方案

随着新能源的快速发展&#xff0c;光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域&#xff0c;IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选&#xff0c;但在长期运行中&#xff0c;例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中&#xff0c;CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时&#xff0c;通常会导致应用响应缓慢&#xff0c;甚至服务不可用&#xff0c;严重影响用户体验和业务运行。因此&#xff0c;掌握一套科学有效的CPU飙高问题排查方法&…...

深度学习习题2

1.如果增加神经网络的宽度&#xff0c;精确度会增加到一个特定阈值后&#xff0c;便开始降低。造成这一现象的可能原因是什么&#xff1f; A、即使增加卷积核的数量&#xff0c;只有少部分的核会被用作预测 B、当卷积核数量增加时&#xff0c;神经网络的预测能力会降低 C、当卷…...

STM32---外部32.768K晶振(LSE)无法起振问题

晶振是否起振主要就检查两个1、晶振与MCU是否兼容&#xff1b;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容&#xff08;CL&#xff09;与匹配电容&#xff08;CL1、CL2&#xff09;的关系 2. 如何选择 CL1 和 CL…...

windows系统MySQL安装文档

概览&#xff1a;本文讨论了MySQL的安装、使用过程中涉及的解压、配置、初始化、注册服务、启动、修改密码、登录、退出以及卸载等相关内容&#xff0c;为学习者提供全面的操作指导。关键要点包括&#xff1a; 解压 &#xff1a;下载完成后解压压缩包&#xff0c;得到MySQL 8.…...