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

Webug4.0靶场通关笔记08- 第11关万能密码登录(SQL注入漏洞)

目录

第13关 万能密码登录

1.打开靶场

2.源码分析

3.渗透方法1

4.渗透方法2


第13关 万能密码登录

本文通过《webug靶场第13关 万能密码登录》来进行渗透实战。

万能密码是利用 SQL 注入漏洞,构造出能够绕过登录验证的特殊密码字符串。通常,登录验证的 SQL 查询语句类似于SELECT * FROM users WHERE username = '$username' AND password = '$password'。攻击者通过输入特殊的密码,如' OR '1'='1',可以使 SQL 语句的条件永远为真,从而绕过验证,以任意用户的身份登录系统。

  • 危害:万能密码的主要危害是导致系统的登录验证机制失效,攻击者可以轻易地获取系统的访问权限,进而进行其他恶意操作,如窃取数据、篡改信息等。

为了防止 SQL 注入和万能密码攻击,开发人员应该对用户输入进行严格的验证和过滤,使用参数化查询或存储过程来避免将用户输入直接嵌入到 SQL 语句中,同时对数据库的权限进行合理的设置,限制用户对敏感数据的访问。

1.打开靶场

进入靶场的第11关,万能密码登录,网址如下所示。

http://192.168.71.1/webug4/control/sqlinject/universal_passwd.php

此时进入了登陆页面,需要输入用户名和密码,如下图所示。 

2.源码分析

对源码进行代码审计,如下为原始代码。

<?php/*** payload 1' or 1=1 #*/
require_once "../../common/common.php";
if (!isset($_SESSION['user'])) {header("Location:../login.php");
}if (isset($_POST["username"]) && isset($_POST['password'])) {if (!empty($_POST['username']) && !empty($_POST['password'])) {$username = $_POST['username'];$password = $_POST['password'];$sql = "SELECT * FROM user WHERE username = '{$username}' AND password = '{$password}'";$res = $dbConnect->query($sql);if (mysqli_num_rows($res) >=1 ){$s = "SELECT * FROM env_list WHERE envName LIKE '%万能密码登陆%'";$r = $dbConnect->query($s);$row = mysqli_fetch_assoc($r);echo "flag:  ".$row['envFlag'];die();}}
}
require_once TPMELATE."/universalpasswd.html";

这段代码实现了一个不安全的登录验证功能,主要逻辑包括:

  • 检查用户会话状态,未登录则跳转到登录页

  • 接收用户提交的username和password参数

  • 直接将用户输入拼接到SQL查询语句中验证凭据

  • 如果查询返回结果,则显示一个包含"万能密码登陆"相关flag的环境变量

经过分析,这段代码有多个安全漏洞,具体说明如下所示:

  • SQL注入漏洞:直接将用户输入拼接到SQL语句中,攻击者可以构造恶意输入如admin' -- 来绕过认证

  • 密码明文存储:代码显示密码是明文存储和比较的,不符合安全规范

  • 敏感信息暴露:直接输出flag等敏感信息

  • 缺乏错误处理:没有对数据库操作失败的情况进行处理

本关卡如果实现万能登陆,需要利用SQL注入漏洞,接下来对数据库相关代码进行注释解释。

// 检查是否提交了username和password参数
if (isset($_POST["username"]) && isset($_POST['password'])) {// 确认参数值不为空if (!empty($_POST['username']) && !empty($_POST['password'])) {// 获取用户输入的用户名和密码(未做任何过滤处理)$username = $_POST['username'];$password = $_POST['password'];// 危险操作:直接将用户输入拼接到SQL语句中(存在SQL注入漏洞)$sql = "SELECT * FROM user WHERE username = '{$username}' AND password = '{$password}'";// 执行SQL查询$res = $dbConnect->query($sql);// 检查是否查询到结果(只要匹配到1条及以上记录就通过验证)if (mysqli_num_rows($res) >=1 ){// 查询环境变量表中包含"万能密码登陆"的记录$s = "SELECT * FROM env_list WHERE envName LIKE '%万能密码登陆%'";$r = $dbConnect->query($s);// 获取查询结果$row = mysqli_fetch_assoc($r);// 直接输出flag(存在信息泄露风险)echo "flag:  ".$row['envFlag'];// 终止脚本执行die();}}
}

最关键的SQL源码如下所示,参数使用单引号闭合。

SELECT * FROM user WHERE username = '{$username}' AND password = '{$password}'

该代码存在严重的SQL注入漏洞,因为:

  1. 未过滤用户输入:直接将POST['username']和P​OST['username']和_POST['password']拼接到SQL语句中

  2. 未使用预处理语句:采用危险的字符串拼接方式构造SQL查询

  3. 错误信息暴露:认证失败时会暴露原始SQL语句结构

攻击者可以利用万能密码绕过登录验证:

username: 1' or 1=1 #
password: [任意值]

这会使SQL语句变为:

SELECT * FROM user WHERE username = '1' or 1=1 #' AND password = '[任意值]'

 其中#注释掉后续条件,or 1=1使查询总是返回真,从而绕过身份验证直接获取flag。

3.渗透方法1

 可以通过构造如下注入命令。

用户名 admin
密码   ' or '1'='1

传入参数后SQL语句如下所示。

SELECT * FROM user WHERE username = 'admin' AND password = '' or '1'='1'

此时相当于如下命令,可以绕过登陆限制直接形成注入命令。

 SELECT * FROM user WHERE username = 'admin'

根据分析,用户名和密码输入如下内容。

admin
' or '1'='1

登录成功后显示flag,渗透成功。

4.渗透方法2

由于SQL语句中的#和-- 是代表注释符, 可以通过构造如下注入命令,用户名输入万能注入语句' or 1=1#或者' or 1=1--  (注意--后面加上空格),密码随便输入。

用户名 admin' or 1=1#
密码   ljn
或者
用户名 admin' or 1=1-- 
密码   ljn

传入参数后SQL语句变为如下所示。

SELECT * FROM user WHERE username = 'admin'or 1=1# AND password = 'ljn'
SELECT * FROM user WHERE username = 'admin'or 1=1--  AND password = 'ljn'

此时相当于如下命令,可以绕过登陆限制直接形成注入命令

 SELECT * FROM user WHERE username = 'admin'

根据分析,用户名和密码输入如下内容。

admin' or 1=1#
ljn

或者如下内容。

admin' or 1=1-- 
ljn

 登录成功后显示flag,渗透成功。

相关文章:

Webug4.0靶场通关笔记08- 第11关万能密码登录(SQL注入漏洞)

目录 第13关 万能密码登录 1.打开靶场 2.源码分析 3.渗透方法1 4.渗透方法2 第13关 万能密码登录 本文通过《webug靶场第13关 万能密码登录》来进行渗透实战。 万能密码是利用 SQL 注入漏洞&#xff0c;构造出能够绕过登录验证的特殊密码字符串。通常&#xff0c;登录验…...

terraform中statefile文件的实现原理及作用

Terraform 的 State 文件&#xff08;terraform.tfstate&#xff09;是其基础设施即代码&#xff08;IaC&#xff09;机制的核心组件&#xff0c;用于记录和管理云资源的实际状态。以下是其实现原理及核心作用的详细分析&#xff1a; 一、State 文件的实现原理 1. 数据结构与…...

7.0/Q1,GBD数据库最新文章解读

文章题目&#xff1a;Cardiovascular disease s mortality in Brazilian municipalities: estimates from the Global Burden of Disease study, 2000-2018 DOI&#xff1a;10.1016/j.lana.2025.101106 中文标题&#xff1a;巴西城市的心血管疾病死亡率&#xff1a;来自2000-20…...

linux 使用nginx部署next.js项目,并使用pm2守护进程

前言 本文基于&#xff1a;操作系统 CentOS Stream 8 使用工具&#xff1a;Xshell8、Xftp8 服务器基础环境&#xff1a; node - 请查看 linux安装node并全局可用pm2 - 请查看 linux安装pm2并全局可用nginx - 请查看 linux 使用nginx部署vue、react项目 所需服务器基础环境&…...

0基础 | Proteus电路仿真 | 电机使用

目录 电机类型 51单片机对直流电机的控制 基于89C51主控的直流电机控制电路仿真 代码《基于Keil C51》 51单片机对步进电机的控制 控制代码《基于Keil C51》 基于89C51主控的步进电机控制电路仿真 电机类型 直流电机 步进电机 51单片机对直流电机的控制 直流电机&#…...

人工智能100问☞第14问:人工智能的三大流派(符号主义、联结主义、行为主义)有何区别?

目录 一、通俗解释 二、专业解析 三、权威参考 一、通俗解释 人工智能的三大流派,就像三位不同性格的工程师用各自的方法造机器人: ​​1、符号主义(逻辑派)​​ ​​核心​​:用“教科书式规则”教机器思考。比如教计算机下棋,先写一本《国际象棋必胜法则》,机器…...

油气人工地震资料信号处理中,机器学习和AI应用

在油气人工地震资料信号处理中&#xff0c;机器学习和AI可以应用于多个环节&#xff0c;显著提升数据质量、解释效率和勘探准确性。以下是主要应用场景及对应的开源工具推荐&#xff1a; 1. 数据预处理 应用场景&#xff1a; 噪声压制&#xff08;如随机噪声、多次波、面波&am…...

Python数据分析课程实验-1

1.1数据分析简介 当今世界对信息技术的依赖程度日渐加深,每天都会产生和存储海量的数据。数据的来源多种多样一自 动检测系统、传感器和科学仪器等。不知你有没有意识到&#xff0c;你每次从银行取钱、买东西、写博客、发微博也会产生新的数据。 什么是数据呢?数据实际上不同于…...

算法--模拟题目

算法–模拟问题 1576. 替换所有的问号 思路:遍历字符串,找到?, 然后遍历字符a 到 z 找到不等于前后字符,替换即可 class Solution { public:string modifyString(string s) {for(int i 0; i < s.size(); i){if(s[i] ?){//替换for(char a a; a < z; a){//当字符不等…...

PDF24 Tools:涵盖20+种PDF工具,简单高效PDF工具箱,支持一键编辑/转换/合并

一、软件介绍 PDF 24 Tools是一款由德国公司开发的PDF编辑工具&#xff0c;拥有18年的历史&#xff0c;并且一直免费使用&#xff0c;这在同类软件中非常难得。 早在许久之前&#xff0c;我就推荐过这款工具的免费网页版&#xff0c;但由于网页使用起来可能不太方便且速度较慢…...

12.多边形的三角剖分 (Triangulation) : Fisk‘s proof

目录 1.Fisks proof Trangulation Coloring Domination Pigeon-Hold Principle Generation 2.Orthogonal Polygons (正交多边形) Necessity of floor(n4) Sufficiency by convex Quadrilateralization Generalization 1.Fisks proof Trangulation 引入内对角线&…...

数据库基本概念:数据库的定义、特点、分类、组成、作用

一&#xff1a;数据库相关概念 1.1 定义 &#xff08;1&#xff09;数据库&#xff1a;存储数据的仓库 &#xff08;2&#xff09;数据库管理系统&#xff1a;模拟和管理数据库的大型软件 &#xff08;3&#xff09;SQL&#xff1a;操作关系型数据库的编程语言&#xff0c;定义…...

PostgreSQL 数据库下载和安装

官网&#xff1a; PostgreSQL: Downloads 推荐下载网站&#xff1a;EDB downloads postgresql 我选了 postgresql-15.12-1-windows-x64.exe 鼠标双击&#xff0c;开始安装&#xff1a; 安装路径&#xff1a; Installation Directory: D:\Program Files\PostgreSQL\15 Serv…...

【c++】【STL】queue详解

目录 queue的作用什么是容器适配器queue的接口构造函数emptysizefrontback queue类的实现 queue的作用 queue是stl库提供的一种容器适配器&#xff0c;也就是我们数据结构中学到的队列&#xff0c;是非常常用的数据结构&#xff0c;特点是遵循LILO&#xff08;last in last ou…...

循环插入数据库行

文章目录 循环插入数据库行 循环插入数据库行 -- 声明变量 DECLARE i INT 201;-- 开始循环 WHILE i < 200 BEGIN-- 插入数据INSERT INTO T_AGVPOS (POS) VALUES (i);SET i i 1; END;...

QMK机械键盘固件开发指南:从源码到实践

QMK机械键盘固件开发指南&#xff1a;从源码到实践 前言 QMK&#xff08;Quantum Mechanical Keyboard&#xff09;是一款开源的键盘固件&#xff0c;支持众多自定义键盘的功能配置。通过QMK&#xff0c;您可以完全掌控键盘的每一个按键&#xff0c;实现复杂的宏指令、多层按…...

Unity SpriteMask(精灵遮罩)

&#x1f3c6; 个人愚见&#xff0c;没事写写笔记 &#x1f3c6;《博客内容》&#xff1a;Unity3D开发内容 &#x1f3c6;&#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f50e;SpriteMask&#xff1a;精灵遮罩 &#x1f4a1;作用就是对精灵图片产生遮罩&#xff0c…...

AdaBoost算法详解:原理、实现与应用指南

AdaBoost算法详解&#xff1a;原理、实现与应用指南 1. 引言 在机器学习领域&#xff0c;AdaBoost&#xff08;Adaptive Boosting&#xff09; 是最早提出的集成学习&#xff08;Ensemble Learning&#xff09;**算法之一&#xff0c;由Yoav Freund和Robert Schapire于1995年…...

Flink流式计算核心:DataStream API与时间语义深度解析

本文将围绕Flink最核心的DataStream API展开&#xff0c;结合其独特的时间语义体系&#xff0c;深入解析Flink如何实现对无界流数据的精准控制&#xff0c;并通过真实业务场景案例演示其工程实践方法。 一、DataStream API&#xff1a;Flink处理无界流的“中枢神经” Flink的A…...

C# 方法的结构与执行详解

在编程世界里&#xff0c;方法是一块具有名称的代码&#xff0c;它就像是一个功能盒子&#xff0c;我们可以使用方法的名称从别的地方执行其中的代码&#xff0c;还能把数据传入方法并接收数据输出。方法是类的函数成员&#xff0c;主要由方法头和方法体两个部分构成。 方法头…...

《AI大模型应知应会100篇》第41篇:多轮对话设计:构建高效的交互式应用

第41篇&#xff1a;多轮对话设计&#xff1a;构建高效的交互式应用 摘要 在银行客服机器人突然准确回答出用户第7次追问的信用卡额度规则时&#xff0c;在医疗问诊系统记住患者既往病史的瞬间&#xff0c;多轮对话技术正在创造令人惊叹的交互体验。本文将以工业级案例为经&am…...

【Day 14】HarmonyOS分布式数据库实战

一、分布式数据库基础 1. 核心概念速记表 术语解释示例场景分布式数据库数据自动同步到同账号设备手机添加商品→平板立即显示KV数据模型键值对存储&#xff08;类似JSON&#xff09;{"cart_item1": {"name":"牛奶","price":10}}数据…...

terraform 删除资源前先校验资源是否存在关联资源

Terraform 删除资源前校验关联资源的解决方案 在使用 Terraform 进行资源删除操作时&#xff0c;确实存在直接删除可能影响关联资源的风险。以下是几种在删除前校验关联资源的方法&#xff1a; 1. 使用 Terraform Data Sources 进行预检查 在删除主资源前&#xff0c;可以通…...

如何免费使用 DeepSeek-Prover-V2?

近日,Deepseek 发布了一个新模型,这是一个在数学推理方面表现卓越的模型,即 DeepSeek Prover V2。 DeepSeek-Prover-V2 是一个专门使用 Lean 4 证明助手进行形式化定理证明的高级语言模型。 简单来说, DeepSeek-Prover-V2 旨在支持数学家和计算机科学家创建和验证形式化证…...

dify+ollama+知识库 部署

这篇文章的前提是已经部署了deepseek和ollama deepseek和ollama安装 代码、配置 本地电脑如果是Windows的话&#xff0c;需要安装Git # 拉取Dify代码 git clone https://github.com/langgenius/dify.git复制配置 进入dify\docker目录 复制.env.example到.env 复制.middlewa…...

补题:K - Magic Tree (Gym - 105231K)

来源&#xff1a;问题 - K - Codeforceshttps://codeforces.com/gym/105231/problem/K 题目描述&#xff1a; 一、题目分析 本题给定一个2行m列的网格&#xff0c;从(1, 1)格子开始进行深度优先搜索&#xff0c;每个格子可到达至少一个边相邻的格子且不重复访问&#xff0c;…...

文章记单词 | 第58篇(六级)

一&#xff0c;单词释义 naive&#xff1a;英 [naɪˈiːv , nɑːˈiːv] 美 [naɪˈiːv , nɑːˈiːv]&#xff0c;形容词&#xff0c;意为 “天真的&#xff1b;幼稚的&#xff1b;轻信的&#xff1b;易受骗的&#xff1b;无经验的&#xff1b;率真的&#xff1b;质朴的”…...

红利底波是什么意思?

红利低波是一种结合了红利策略和低波策略的投资策略&#xff0c;主要选取股息率高且波动率低的股票进行投资&#xff0c;具有 “高收益低风险” 的特点&#xff0c;适合大多数投资者的权益资产配置。以下是具体介绍&#xff1a; 策略构成要素 红利策略 &#xff1a;关注股息率…...

缓存:缓解读库压力的高效方案与应用实践

在软件开发和系统设计中&#xff0c;使用缓存来缓解读库压力是一种常见且有效的优化策略&#xff0c;以下是具体的介绍&#xff1a; 一、缓存的基本概念 缓存是一种临时数据存储区域&#xff0c;它存储了经常访问的数据副本。当应用程序需要访问数据时&#xff0c;首先会检查…...

17. LangChain流式响应与实时交互:打造“类ChatGPT“体验

引言&#xff1a;从"等待加载"到"即时对话"的革命 2025年某在线教育平台的AI助教引入流式交互后&#xff0c;学生平均对话轮次提升3.2倍&#xff0c;完课率提高47%。本文将基于LangChain的异步流式架构&#xff0c;揭秘如何实现毫秒级响应的自然对话体验。…...

仿腾讯会议——服务器结构讲解

总功能 1、数据库类 1、进入mysql 2、查看当前数据库 2、线程池 3、网络类 阻塞和非阻塞是通过套接字来实现的&#xff0c;所以不能发送和接收的阻塞状态不同...

【笔记】深度学习模型训练的 GPU 内存优化之旅③:内存交换篇

开设此专题&#xff0c;目的一是梳理文献&#xff0c;目的二是分享知识。因为笔者读研期间的研究方向是单卡上的显存优化&#xff0c;所以最初思考的专题名称是“显存突围&#xff1a;深度学习模型训练的 GPU 内存优化之旅”&#xff0c;英文缩写是 “MLSys_GPU_Memory_Opt”。…...

(B题|矿山数据处理问题)2025年第二十二届五一数学建模竞赛(五一杯/五一赛)解题思路|完整代码论文集合

我是Tina表姐&#xff0c;毕业于中国人民大学&#xff0c;对数学建模的热爱让我在这一领域深耕多年。我的建模思路已经帮助了百余位学习者和参赛者在数学建模的道路上取得了显著的进步和成就。现在&#xff0c;我将这份宝贵的经验和知识凝练成一份全面的解题思路与代码论文集合…...

【2025最新】为什么用ElasticSearch?和传统数据库MySQL与什么区别?

Elasticsearch 深度解析&#xff1a;从原理到实践 一、为什么选择 Elasticsearch&#xff1f; 数据模型 Elasticsearch 是基于文档的搜索引擎&#xff0c;它使用 JSON 文档来存储数据。在 Elasticsearch 中&#xff0c;相关的数据通常存储在同一个文档中&#xff0c;而不是分散…...

华为云Astro大屏连接器创建操作实例:抽取物联网iotda影子设备数据的连接器创建

目录 样图(API连接器创建成功) 说明 操作场景(以Astro大屏抽取iotda影子参数为例) 实际操作步骤 新建连接器 设置基本信息。 接口鉴权方式,支持API鉴权、AK/SK、API Key和无身份验证 无身份验证 AK/SK认证(目前暂不能用) API Key认证(第三方使用) API鉴权认…...

C#泛型集合深度解析(九):掌握System.Collections.Generic的核心精髓

一、泛型集合革命:告别装箱拆箱的性能噩梦 1.1 泛型与非泛型集合性能对比 // 非泛型集合(ArrayList) ArrayList arrayList = new ArrayList(); arrayList.Add(100); // 装箱发生 int value = (int)arrayList[0]; // 拆箱发生// 泛型集合(List<T>) List<…...

人工智能-深度学习之卷积神经网络

深度学习 mlp弊端卷积神经网络图像卷积运算卷积神经网络的核心池化层实现维度缩减卷积神经网络卷积神经网络两大特点卷积运算导致的两个问题&#xff1a;图像填充&#xff08;padding&#xff09;结构组合问题经典CNN模型LeNet-5模型AlexNet模型VGG-16模型 经典的CNN模型用于新…...

《软件设计师》复习笔记(11.1)——生命周期、CMM、开发模型

目录 一、信息系统生命周期 系统规划阶段 系统分析阶段&#xff08;逻辑设计&#xff09; 系统设计阶段&#xff08;物理设计&#xff09; 系统实施阶段 系统运行与维护阶段 二、能力成熟度模型&#xff08;CMM/CMMI&#xff09; CMM 五级模型 CMMI 两种表示方法 真题…...

AI大模型基础设施:主流的几款开源AI大语言模型的本地部署成本

以下是对目前主流开源AI大语言模型&#xff08;如DeepSeek R1、LLaMA系列、Qwen等&#xff09;本地部署成本的详细分析&#xff0c;涵盖计算机硬件、显卡等成本&#xff0c;价格以美元计算。成本估算基于模型参数规模、硬件需求&#xff08;GPU、CPU、RAM、存储等&#xff09;以…...

Narendra自适应控制器设计

上一篇介绍了在系统结构中引入前馈和反馈的结构&#xff0c;然后利用李雅普诺夫稳定性理论设计MRACS&#xff0c;在基于输入输出形式中&#xff0c;利用李雅普诺夫稳定性设计的自适应率中包含了误差的导数&#xff0c;这降低了系统的抗干扰性&#xff0c;为了避免这一缺点&…...

为什么大模型偏爱Markdown

Markdown 的简洁之美 我们常见的文档格式&#xff0c;比如HTML、JSON、XML或者Markdown&#xff0c;Markdown是最简洁的。 比如要展示一行标题&#xff0c;相比复杂的HTML标签&#xff0c;使用Markdown我们只需要在文本前加个井号&#xff1a; <heading level“1”>这是…...

【kafka系列】消费者组

目录 消费者组功能点 1. 动态负载均衡 2. 容错高可用 3. 消费进度管理 4. 并行消费能力 5. 消费隔离性 其他要点 1. Rebalance过程详解 2. 位移提交的精确语义 3. 消费者限速策略 4. 跨机房消费设计 消费者组功能点 1. 动态负载均衡 核心机制&#xff1a;通过Rebal…...

2025五一杯数学建模C题:社交媒体平台用户分析问题;思路分析+模型代码

&#xff08;一&#xff09;问题背景 想象一下&#xff0c;社交媒体平台是一个充满活力的生态系统&#xff0c;博主们如同才华横溢的创作者&#xff0c;凭借专业知识或独特兴趣&#xff0c;精心打造出各种高质量内容&#xff0c;吸引着众多用户的目光。用户则像热情的参与者&a…...

Kotlin-运算符重载函数

在 Kotlin 里&#xff0c;运算符重载函数允许为自定义类型重新定义现有的运算符(如 -…)行为&#xff0c;从而让自定义类型能像内置类型那样使用运算符 文章目录 基本语法作用场景类对象数据类型接口 注意事项 基本语法 若要重载运算符&#xff0c;需要定义一个带有 operato…...

哈希表笔记(三)Java Hashmap

一、基本介绍 HashMap 是 Java 集合框架中的核心类之一&#xff0c;基于哈希表实现&#xff0c;提供了 Map 接口的主要实现。 1.1 主要特点 实现了 Map<K,V> 接口允许 null 键和 null 值&#xff08;不同于 Hashtable&#xff09;非同步实现&#xff08;非线程安全&am…...

2025五一杯C题五一杯数学建模思路代码文章教学:社交媒体平台用户分析问题

完整内容请看文章最下面的推广群 问题一详细分析&#xff1a;逐步思考与建模过程 第1步&#xff1a;问题理解与数学建模目标明确 目标明确&#xff1a; 平台希望根据2024年7月11日至7月20日的用户与博主交互数据&#xff0c;预测2024年7月21日各博主新增的关 注数&#xff0c;…...

2025五一数学建模竞赛B题完整分析论文(共42页)(含模型、可运行代码、数据)

2025年五一数学建模竞赛B题完整分析论文 摘 要 一、问题分析 二、问题重述 三、模型假设 四、符号定义 五、 模型建立与求解 5.1问题1 5.1.1问题1思路分析 5.1.2问题1模型建立 5.1.3问题1代码 5.1.4问题1求解结果 5.2问题2 5.2.1问题2思路分析 5.2.…...

[蓝桥杯 2021 省 AB] 砝码称重 Java

import java.util.*;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt();int[] w new int[n 1];int sum 0; // 所有砝码重量之和for (int i 1; i < n; i) {w[i] sc.nextInt();sum w[i];}sc.close()…...

Linux 命令如何同时支持文件参数与管道输入?

文章目录 Linux 命令如何同时支持文件参数与管道输入&#xff1f;命令输入方式与管道机制概述常见输入控制方式常见使用示例程序实现思路&#xff1a;统一处理输入的方式判定输入来源的基本模式为何命令应支持参数与标准输入&#xff1f; GNU Coreutils wc 源码解析&#xff1a…...

Lucene多种数据类型使用说明

Lucene 作为一款高性能的全文检索引擎库&#xff0c;其核心功能围绕索引和搜索文本数据&#xff0c;但它也支持多种数据类型以满足复杂的应用场景。以下是 Lucene 支持的主要数据类型及其用途的详细说明&#xff1a; 1. 文本类型&#xff08;Text&#xff09; 用途&#xff1a;…...