1168 -- 奋斗的小蜗牛

本文介绍了一道编程题目,题目背景讲述了一只小蜗牛立志攀登金字塔的故事,并通过计算每天的爬升和下滑来解决实际问题。读者将学习如何通过编程实现这一计算过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

奋斗的小蜗牛

Time Limit:1000MS  Memory Limit:65536K
Total Submit:139 Accepted:89

Description

传说中能站在金字塔顶的只有两种动物,一种是鹰,一种是蜗牛。一只小蜗牛听了这个传说后,大受鼓舞,立志要爬上金字塔。为了实现自己的梦想,蜗牛找到了老鹰,老鹰告诉它金字塔高H米,小蜗牛知道一个白天自己能向上爬10米,但由于晚上要休息,自己会下滑5米。它想知道自己在第几天能站在金字塔顶,它想让你帮他写个程序帮助它。

Input

第一行有一个整数t,表示t组测试数据。
第二行一个整数H(0 < H < 10^9)代表金字塔的高度。

Output

输出一个整数n表示小蜗牛第n天站在金字塔顶上

Sample Input

2
1
5

Sample Output

1
1

Source

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    namespace AK1168 {
        class Program {
            static void Main(string[] args) {
                int n = int.Parse(Console.ReadLine());
                while (n-- > 0) {
                    int h = int.Parse(Console.ReadLine());
                    if (h <= 10) Console.WriteLine("1");
                    else {
                        if (h % 5 == 0)
                            Console.WriteLine(h / 5 - 1);
                        else
                            Console.WriteLine(h / 5);
                    }
                }
            }
        }
    }


<think>我们正在讨论如何使用find命令进行模糊查找,特别是使用通配符。用户已经知道基本语法:find/ -name "test",现在想了解如何使用通配符进行模糊匹配。根据引用[1]和引用[5]:-find命令支持通配符,星号(*)匹配任意内容(包括空)。-示例:find-name"demo*"会匹配所有以"demo"开头的文件。另外,引用[3]还提到find命令的其他选项,如-perm(按权限查找),但用户当前问题集中在通配符模糊查找。因此,我们需要详细说明如何通过通配符进行模糊查找,包括:1.基本通配符:*和?2.查找位置(起始路径)3.大小写敏感问题4.其他常用通配符注意:在find命令中,通配符需要放在双引号内,以防止shell提前展开。步骤:1.使用星号(*)匹配任意字符序列(包括空)2.使用问号(?)匹配单个字符3.使用方括号([])匹配指定范围内的字符示例:查找根目录下所有以".log"结尾的文件:find /-name"*.log"查找当前目录下所有以"file"开头,后面跟一个任意字符的文件:find. -name "file?"另外,引用[5]提供了使用相对路径和绝对路径的示例。注意:find命令默认是大小写敏感的。如果要不区分大小写,可以使用-iname选项。例如:find /-iname "*.jpg"我们还可以结合其他条件,如按类型、按时间等,但用户当前问题集中在通配符,所以先聚焦于此。最后,提醒用户通配符需要放在引号中,否则shell会先展开通配符,导致find命令接收到的参数不是预期的模式。生成相关问题:1.如何查找特定类型的文件(如目录)?2.如何忽略大小写进行查找?3.如何同时查找多个模式?4.如何限制查找的深度?现在,按照要求组织回答:</think>在 Linux 中使用 `find` 命令进行模糊查找时,通配符是关键工具。以下是详细的使用方法和示例: ### 🔍 基本通配符语法 ```bash find [起始路径] -name "匹配模式" ``` ### 🌟 常用通配符 1. `*` (星号) - 匹配任意长度字符(包括空字符) - 示例:查找所有 `.txt` 文件 ```bash find /home -name "*.txt" ``` 2. `?` (问号) - 匹配单个任意字符 - 示例:查找类似 `file1.log`, `file2.log` 的文件 ```bash find /var/log -name "file?.log" ``` 3. `[]` (方括号) - 匹配指定范围内的字符 - 示例:查找 `report2023-01` 到 `report2023-09` ```bash find /reports -name "report2023-0[1-9]" ``` ### 📂 实用查找示例 | 场景 | 命令 | 说明 | |------|------|------| | 当前目录模糊查找 | `find . -name "img_*.jpg"` | 查找当前目录所有以 `img_` 开头的 JPG 文件 | | 系统级查找 | `find / -name "*.conf" 2>/dev/null` | 查找全系统所有 `.conf` 文件(忽略错误) | | 多条件查找 | `find ~/Documents -name "draft*" -o -name "final*"` | 查找以 `draft` 或 `final` 开头的文件 | | 目录查找 | `find / -type d -name "project_*"` | 查找所有以 `project_` 开头的目录 | | 忽略大小写 | `find /var -iname "*.LOG"` | 查找 `.log` 文件(不区分大小写) | ### ⚠️ 重要注意事项 1. **引号规则** 通配符必须用双引号包裹,否则会被 shell 提前解析: ```bash # 正确 find / -name "*.py" # 错误(可能返回意外结果) find / -name *.py ``` 2. **特殊字符转义** 查找包含特殊字符的文件需用反斜杠转义: ```bash find /tmp -name "file\?.txt" ``` 3. **权限处理** 系统级查找可能因权限报错,建议: ```bash find / -name "target*" 2>/dev/null # 忽略权限错误 ``` ### 💡 进阶技巧 ```bash # 查找并显示详细信息(引用[3]) find ~/Downloads -name "*.iso" -ls # 查找并复制到新位置 find /backup -name "db_*.sql" -exec cp {} ~/new_backup \; # 查找7天内修改过的日志 find /var/log -name "*.log" -mtime -7 ``` > 📌 提示:`-name` 默认区分大小写,使用 `-iname` 可实现不区分大小写搜索(如 `find / -iname "readme*"`)[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值