Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >PAT(乙级)1001.害死人不偿命的(3n+1)猜想(15)

PAT(乙级)1001.害死人不偿命的(3n+1)猜想(15)

作者头像
lexingsen
发布于 2022-02-25 00:08:21
发布于 2022-02-25 00:08:21
39610
代码可运行
举报
文章被收录于专栏:乐行僧的博客乐行僧的博客
运行总次数:0
代码可运行

👉看目录,点收藏

1.官方体验入口

2.上手体验解决需求

3.小说生成改文能力

4.技术开发实践

5.应用前景

6.Photomaker结合修改提示词

7.windows本地一键运行包

8.总结

导读

最近经常有测试和产品同学让我帮忙处理数据,倒不是单纯写SQL,而是面对各种不同类型的数据,需要不通的格式处理,特别是动辄上万的数据,通过文本编辑一眼都望不到头,超过2万,文本编辑工具都卡的不行,手动处理数据效率太低,腾讯混元:看我的~~~

官方体验入口

腾讯混元 (tencent.com)

支持多轮对话,内容创作,逻辑推理,知识增强,多模态,这每个功能在日常工作中的应用简直显而易见,优化代码,生成简易SQL,应有尽有,甚至可以用于视频脚本创作

上手体验解决需求

需求一

第一位同事的需求,面对大量数据,想要一次性进行SQL查询,但苦于没有时间和文本工具又响应极其的慢,不得不求助开发同学,现在给到的数据需要每行末尾加一个逗号,且针对数据加字符处理,以便在SQL内直接使用,腾讯混元:看我的~~

提示词:现在你是一位前端程序员,请使用html实现以下功能,给定一个输入框,对输入框内的数据,前后加上英文的单引号,并在末尾加上逗号,最后一行数据不用加逗号,点击生成按钮,输出到输出框内, 示例 输入框数据为

输出结果

代码语言:html
AI代码解释
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>前端程序员助手</title>
</head>
<body>
    <h1>前端程序员助手</h1>
    <p>请输入数据:</p>
   <textarea id="inputText" rows="10" cols="50"></textarea>
    

   <button onclick="generate()">生成</button>
    <p>输出结果:</p>
   <textarea id="outputText" rows="10" cols="50" readonly></textarea>
   <script>
        function generate() {
            const inputText = document.getElementById('inputText').value;
            const lines = inputText.split('\n');
            let output = '';
            for (let i = 0; i< lines.length; i++) {
                if (lines[i].trim() !== '') {
                    output += "'" + lines[i].trim() + "',";
                    if (i === lines.length - 1) {
                        output = output.slice(0, -1);
                    }
                    output += '\n';
                }
            }
            document.getElementById('outputText').value = output;
        }
    </script>
</body>
</html>

验证功能完美实现

优化此功能,如果数据量大,不能一次性复制到粘贴板,希望拥有一个复制结果按钮,腾讯混元:看我的~

代码语言:html
AI代码解释
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>前端程序员助手</title>
</head>
<body>
    <h1>前端程序员助手</h1>
    <p>请输入数据:</p>
  <textarea id="inputText" rows="10" cols="50"></textarea>
    

  <button onclick="generate()">生成</button>
    <p>输出结果:</p>
  <textarea id="outputText" rows="10" cols="50" readonly></textarea>
   

  <button onclick="copyToClipboard()">复制结果</button>
  <script>
        function generate() {
            const inputText = document.getElementById('inputText').value;
            const lines = inputText.split('\n');
            let output = '';
            for (let i = 0; i< lines.length; i++) {
                if (lines[i].trim() !== '') {
                    output += "'" + lines[i].trim() + "',";
                    if (i === lines.length - 1) {
                        output = output.slice(0, -1);
                    }
                    output += '\n';
                }
            }
            document.getElementById('outputText').value = output;
        }

        function copyToClipboard() {
            const outputText = document.getElementById('outputText');
            outputText.select();
            outputText.setSelectionRange(0, 99999);
            document.execCommand('copy');
        }
   </script>
</body>
</html>

需求二

第二位同事的需求来源于财务同学,他们对于数据的处理通常习惯在XLS表格内处理,但是表格密密麻麻,时间久了难免粗心大意,如何快速找出在数据表格内数据中带有空格或者换行或者回车等非法字符?

提示词:

现在你是一位前端程序员,请使用html实现以下功能,给定一个输入框,对输入框内的数据,校验是否存在空格,换行,或者回车等特殊字符,如果存在,将这条数据标红

需求三

在日常单元测试中,经常需要对测试数据进行拼接,但是数据没有数据源,无法从数据库中查询,只能手动造数据,但是数据结构需要手动填充数据,此时的造数据就是一个需要优化的地方,腾讯混元:看我的~

提示词:现在你是一位前端程序员,请使用html实现以下功能,给定一个输入框,对输入框内的数据,拼接到map里面,第一个数据为map的key,第二个数据为map的v,并输出在输出框,

代码语言:html
AI代码解释
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>前端程序员助手</title>
</head>
<body>
    <h1>前端程序员助手</h1>
    <p>请输入数据:</p>
  <textarea id="inputText" rows="10" cols="50"></textarea>
    

  <button onclick="generate()">生成</button>
    <p>输出结果:</p>
  <textarea id="outputText" rows="10" cols="50" readonly></textarea>
  <script>
        function generate() {
            const inputText = document.getElementById('inputText').value;
            const lines = inputText.split('\n');
            let output = '';
            let map = new Map();
            for (let i = 0; i< lines.length; i++) {
                if (lines[i].trim() !== '') {
                    const keyValue = lines[i].split(/\s+/);
                    if (keyValue.length === 2) {
                        const key = keyValue[0];
                        const value = keyValue[1];
                        if (!map.has(key)) {
                            map.set(key, []);
                        }
                        map.get(key).push(value);
                    }
                }
            }
            for (const [key, values] of map.entries()) {
                for (const value of values) {
                    output += `map.put("${key}", "${value}")\n`;
                }
            }
            document.getElementById('outputText').value = output;
        }
    </script>
</body>
</html>

这几个例子全部是前端功能实现,那么日常后端开发中有没有可以用到的呢?

需求四

在日常开发中,对于外部接入的数据,需要转换,因为数据结构的设计不通用,需要将String类型转换为Bigdecimal

但是在此之前,需要判断是否能够转为Bigdecimal,腾讯混元:看我的~~

真是个小机灵鬼,如果出错就不能哈哈哈哈哈哈

代码语言:java
AI代码解释
复制
  public static boolean isBigDecimal(String str) {
    try {
      new BigDecimal(str);
      return true;
    } catch (NumberFormatException e) {
      return false;
    }
  }

  public static void main(String[] args) {
    System.out.println(isBigDecimal("123.45")); // true
    System.out.println(isBigDecimal("123.00")); // true
    System.out.println(isBigDecimal("123.00.00")); // false
    System.out.println(isBigDecimal("abc123")); // false
  }

需求五

面对项目中每天的异常和慢响应治理,虽然我们可以选择sonar来治理检查,但是面对历史业务,有些只能从SQL方面入手,那么大数据量的SQL优化,除了已经优化的点,还有没有可能再进行优化呢?腾讯混元:看我的~

先来个简单的练练手~

请问在使用Group By关键字进行分组查询时,是否可以对结果进行排序?

线上实战SQL优化

现在你是一位MYSQL专家,请分析下面的SQL,如何优化,由于隐私原因就不在此放全部SQL

代码语言:sql
AI代码解释
复制

explain SELECT
    t.origin_order_code,
    t1.plan_date,
    t.product_code,
    t.product_name,
    sum( t2.plan_qty ) plan_qty,
    SUM( t2.shipped_qty ) shipped_qty,
    IFNULL( sum( t3.qty ), 0 ) qty,
    t.nuclear_goods_num,
    t.update_by,
    t.update_time,
    t.unit 
  FROM
    goods t
    LEFT JOIN order_header t1 ON t.origin_order_code = t1.origin_order_code
    LEFT JOIN order_item t2 ON t1.order_code = t2.order_code 
    AND t.product_code = t2.product_code 
    AND t1.send_location_code = t2.location_code
    LEFT JOIN tainer_detail t3 ON t.origin_order_code = t3.sale_order_code 
    AND t.product_code = t3.product_code 
    AND t.warehouse_code = t3.warehouse_code 
  WHERE
    t.warehouse_code = 'XXX' 
    AND t1.send_location_code = 'XXX' 
    AND t2.location_code = 'XXX' 
  GROUP BY
    t.origin_order_code,
  t.product_code ;

分析结论

  1. 大表做关联查询时,要保证关联字段存在索引。如果没有索引,join关联查询效率会极低
  2. 绝大部分慢查询优化,降低主查询的扫描行数(修改sql查询逻辑,修改业务查询逻辑)

例:调整预计送货时间查询条件必填,降低主查询扫描行数

  1. 单表查询,对新加字段数据量过大情况,如果未增加索引,同样会引发慢查询场景
代码语言:sql
AI代码解释
复制
首先,我们可以通过查看EXPLAIN的结果来分析这个SQL查询的性能。EXPLAIN会显示MySQL如何执行查询,包括使用的索引、表连接方式等信息。

EXPLAIN SELECT
    t.origin_order_code,
    t1.plan_date,
    t.product_code,
    t.product_name,
    sum( t2.plan_qty ) plan_qty,
    SUM( t2.shipped_qty ) shipped_qty,
    IFNULL( sum( t3.qty ), 0 ) qty,
    t.nuclear_goods_num,
    t.update_by,
    t.update_time,
    t.unit 
  FROM
    goods t
    LEFT JOIN order_header t1 ON t.origin_order_code = t1.origin_order_code
    LEFT JOIN order_item t2 ON t1.order_code = t2.order_code 
    AND t.product_code = t2.product_code 
    AND t1.send_location_code = t2.location_code
    LEFT JOIN tainer_detail t3 ON t.origin_order_code = t3.sale_order_code 
    AND t.product_code = t3.product_code 
    AND t.warehouse_code = t3.warehouse_code 
  WHERE
    t.warehouse_code = 'XXX' 
    AND t1.send_location_code = 'XXX' 
    AND t2.location_code = 'XXX' 
  GROUP BY
    t.origin_order_code,
  t.product_code ;
根据EXPLAIN的结果,我们可以分析出以下优化建议:

为goods表的warehouse_code、origin_order_code和product_code列创建索引,以加快WHERE子句和GROUP BY子句的执行速度。

ALTER TABLE goods ADD INDEX idx_warehouse_code (warehouse_code);
ALTER TABLE goods ADD INDEX idx_origin_order_code (origin_order_code);
ALTER TABLE goods ADD INDEX idx_product_code (product_code);
为order_header表的send_location_code和origin_order_code列创建索引,以加快WHERE子句和JOIN操作的执行速度。
ALTER TABLE order_header ADD INDEX idx_send_location_code (send_location_code);
ALTER TABLE order_header ADD INDEX idx_origin_order_code (origin_order_code);
为order_item表的location_code、product_code和order_code列创建索引,以加快JOIN操作的执行速度。
ALTER TABLE order_item ADD INDEX idx_location_code (location_code);
ALTER TABLE order_item ADD INDEX idx_product_code (product_code);
ALTER TABLE order_item ADD INDEX idx_order_code (order_code);
为tainer_detail表的warehouse_code、product_code和sale_order_code列创建索引,以加快JOIN操作的执行速度。
ALTER TABLE tainer_detail ADD INDEX idx_warehouse_code (warehouse_code);
ALTER TABLE tainer_detail ADD INDEX idx_product_code (product_code);
ALTER TABLE tainer_detail ADD INDEX idx_sale_order_code (sale_order_code);
考虑将LEFT JOIN操作替换为INNER JOIN操作,如果可能的话。这将减少查询结果集的大小,从而提高查询性能。
如果可能,尝试将查询分解为多个子查询或使用临时表来减少数据处理的复杂性。
请注意,这些优化建议可能会根据实际数据表结构和查询需求而有所不同。在应用这些建议之前,请确保备份数据库并对查询进行充分测试,以确保优化后的查询仍然能够返回正确的结果。

小说生成改文能力

2222年,是人类在地球上的最后一个时代。在这个科技高度发达的时代,人类创造了无数惊人的科技成果,但也承受着地球逐渐枯竭的资源带来的恶果。

太阳已经开始步入红巨星阶段,地球表面的温度逐渐升高,海平面不断上升,气候变化无常,生物大量灭绝。人类为了生存,不得不放弃地球,乘坐宇宙飞船前往太空寻找新的家园。

在这个过程中,出现了一位名叫艾伦的天才科学家。他在研究宇宙的过程中,发现了一个名为“诺瓦”的星球,这个星球的环境与地球十分相似,有望成为人类的新家园。然而,诺瓦星球距离地球数百光年,以现有的科技水平,人类无法在有限的时间内到达。

为了实现人类的重生,艾伦带领团队开展了一项名为“时光穿越”的研究项目。他们试图通过时光穿越技术,将人类的意识传输到诺瓦星球,实现人类在诺瓦星球的“重生”。

经过多年的努力,艾伦团队终于发明了名为“意识穿梭器”的装置,可以将人类的意识传输到诺瓦星球。然而,这项技术的测试需要一个志愿者。志愿者的意识将被永久地留在诺瓦星球,无法回到地球。

艾伦的妻子,艾米,是一个勇敢的女子。她知道这项技术的风险,但还是义无反顾地成为了志愿者。她说:“为了人类的未来,我愿意做出牺牲。”在艾伦的泪眼中,艾米的意识被传输到了诺瓦星球。

艾伦带着团队的成员继续优化意识穿梭器。在他们的努力下,意识穿梭器的传输速度越来越快,人类可以在诺瓦星球的意识中停留的时间也越来越长。

终于,地球的环境恶化到了极点。人类不得不启动“诺亚方舟计划”,乘坐宇宙飞船离开地球。在艾伦的指引下,人们开始通过意识穿梭器前往诺瓦星球。

然而,诺瓦星球并不像地球那样容易适应。人类的身体在诺瓦星球上产生了各种不适,许多人因此生病甚至死亡。艾伦意识到,他们需要找到一种方法,让人类的身体在诺瓦星球上生存下来。

在一次实验中,艾伦发现了一种名为“诺瓦因子”的物质,可以让人类的身体适应诺瓦星球的环境。然而,诺瓦因子只在诺瓦星球上才有,地球上的资源已经枯竭,无法提取诺瓦因子。

艾伦决定,他要用自己的意识回到过去,找到提取诺瓦因子的方法,让人类在诺瓦星球上生存下来。然而,这样做会让艾伦的意识永远留在过去,无法回到2222年的诺瓦星球。

艾伦没有犹豫,他告诉自己:“为了人类,我别无选择。”他启动了意识穿梭器,将自己的意识送回到了过去。

艾伦的意识回到了一百年前,那时地球的环境还没有恶化。他利用自己的知识,找到了一种提取诺瓦因子的方法,并将这项技术传给了当时的科学家们。

然而,艾伦的意识却无法回到2222年的诺瓦星球。他只能将自己的意识留在过去,通过时光穿梭器,将自己所拥有的知识传递给未来的人类。

在艾伦的帮助下,人类成功提取了诺瓦因子,并制造出了可以让人体适应诺瓦星球的装置。在地球毁灭的那一刻,人类乘坐着宇宙飞船,带着诺瓦因子和装置,前往诺瓦星球。

在诺瓦星球上,人类的身体逐渐适应了诺瓦星球的环境。他们在诺瓦星球上建立了新的文明,延续着人类的希望。

而艾伦的意识,永远留在了一百年前。他用自己的一生,拯救了人类,让人类得以在诺瓦星球上生存下来。他的英勇事迹,成为了人们口中的传奇,永远留在了人类的历史中。

技术开发实践

数据准备-->模型训练-->模型优化-->部署与测试

应用前景

Photomaker结合修改提示词

这个项目主要是为了生成写实人像的哈,虽然能处理非写实的数据,但是生成的图还是针对写实人像的

文本到图像生成的最新进展在合成基于给定文本提示的逼真人类照片方面取得了显着进展。 然而,现有的个性化生成方法无法同时满足高效率、有前途的身份(ID)保真度和灵活的文本可控性要求。 在这项工作中,我们介绍了PhotoMaker,这是一种高效的个性化文本到图像生成方法,它主要将任意数量的输入ID图像编码到堆栈ID嵌入中,以保存ID信息。 这样的嵌入,作为统一的ID表示,不仅可以全面封装同一输入ID的特征,还可以容纳不同ID的特征,以便后续集成。 这为更有趣和更实用的应用铺平了道路。 此外,为了推动PhotoMaker的训练,我们提出了一个面向ID的数据构建管道来组装训练数据。 在通过拟建管道构建的数据集的滋养下, 与基于测试时微调的方法相比,我们的 PhotoMaker 具有更好的 ID 保留能力,但可显著提高速度、获得高质量的生成结果、强大的泛化能力和广泛的应用。

我们的方法将相同身份的几个输入图像转换为堆叠的 ID 嵌入。 这种嵌入可以看作是要生成的 ID 的统一表示。 在推理阶段,构成堆叠 ID 嵌入的图像可以来自不同的 ID。 然后,我们可以在不同的上下文中合成自定义的 ID。

我们首先分别从文本编码器和图像编码器中获取文本嵌入和图像嵌入。 然后,我们通过合并相应的类嵌入(例如,男人和女人)和每个图像嵌入来提取融合嵌入。 接下来,我们沿长度维度连接所有融合嵌入,形成堆叠 ID 嵌入。 最后,我们将堆叠的 ID 嵌入提供给所有交叉注意力层,以便自适应地合并扩散模型中的 ID 内容。 需要注意的是,虽然我们在训练时使用了相同ID和遮罩背景的图像,但我们可以直接输入不同ID的图像,而不会出现背景失真,从而在推理过程中创建一个新的ID。

这里我理解的自定义的 ID和保持一致的id就可以理解为SD中的种子,seed值最能够定义图片的范围和图像,结合以前出的ipadapter即可实现图像风格和人脸迁移,seed值是我们再AI绘画中比较和交换的起点,SD会以seed值为中心,将其周围的像素进行扩散或模糊处理。这里的seed值可以是一个像素点、一个区域或者整幅图像。

windows本地一键运行包

代码语言:html
AI代码解释
复制
https://pan.quark.cn/s/d282f4a86c91#/list/share

那么我们了解一下官方的提示词语法

对于风格化,您可以使用我们的其他渐变演示PhotoMaker风格。

❗️❗️❗️[重要]个性化步骤:

1.️⃣ 上载您要自定义的某人的图像。一张图片可以,但越多越好。虽然我们不进行人脸检测,但上传图像中的人脸应该占据图像的大部分。

2.️⃣ 输入文本提示,确保在要自定义的类单词后面加上触发词:img,例如:man img或woman img或girl img。

3.️⃣ 选择您喜欢的样式模板。

4.️⃣ 单击“提交”按钮开始自定义。

我们平时写提示词时不可能回家这个特殊触发词,但是如果我们不加,实测肯定会报错的,那么就根据这个特性,我们怎么快速的加一个触发词呢?腾讯混元:看我的~~

代码语言:html
AI代码解释
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>Image Trigger</title>
</head>
<body>
   <input type="text" id="input-text" placeholder="请输入文本">
   <button id="convert-button">转换</button>
    <p id="output-text"></p>

   <script>
        const inputText = document.getElementById("input-text");
        const convertButton = document.getElementById("convert-button");
        const outputText = document.getElementById("output-text");

        convertButton.addEventListener("click", function() {
            const inputWords = inputText.value.split(/\s+/);
            const updatedWords = inputWords.map(word => {
                if (word === "man" || word === "woman" || word === "girl" || word === "boy") {
                    return word + " img";
                } else {
                    return word;
                }
            });

            outputText.textContent = updatedWords.join(" ");
        });
    </script>
</body>
</html>

复制这段代码,保存到桌面,以.html结尾

优化页面样式

测试功能

总结

深度的测试了腾讯混元大模型在实际工作,生活中快速提高生产力的功能,整体满意度100%,实实在在的提高了生产效率,结合有效的提示词工程,AI与AI之间的差距始终在于使用的人。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
.then(res => { if(res.data.Code === 200){ this.$message.success("注册成功"); } });这段代码是什么意思
.then(res => { if(res.data.Code === 200){ this.$message.success("注册成功"); } });这段代码是什么意思
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
PAT (Basic Level) Practice (中文)1001 害死人不偿命的(3n+1)猜想
对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……
C you again 的博客
2020/09/15
3380
PAT(乙级)1001
对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展…… 我们今天的题目不是证明卡拉兹猜想,而是对给定的任一不超过1000的正整数n,简单地数一下,需要多少步(砍几下)才能得到n=1? 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。 输出格式:输出从n计算到1需要的步数。 输入样例: 3 输出样例:
zy010101
2019/05/25
3300
1001. 害死人不偿命的(3n+1)猜想 (15)
对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……
AI那点小事
2020/04/20
3890
1001. 害死人不偿命的(3n+1)猜想 (15)
PAT 1001 害死人不偿命的(3n+1)猜想
对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……
freesan44
2021/08/18
3000
1001. 害死人不偿命的(3n+1)猜想 (15)
对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……
指点
2019/01/18
3530
害死人不偿命的(3n+1)猜想 —— 《C语言代码笔记》
今天逛论坛碰到一个有趣的题,给大家分享 题目 卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展…… 我们今天的题目不是证明卡拉兹猜想,而是对给定的任一不
神无月
2018/06/25
1.5K0
【PAT乙级】害死人不偿命的(3n+1)猜想
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
喜欢ctrl的cxk
2019/11/08
3670
嘿胸第,暑假还在玩?快来和我一起刷题吧
对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……
短短的路走走停停
2019/05/14
4880
技术 | Python从零开始系列连载(二十一)
为了解答大家初学Python时遇到各种常见问题,小灯塔特地整理了一系列从零开始的入门到熟练的系列连载,每周五准时推出,欢迎大家学积极学习转载~
灯塔大数据
2018/07/25
5040
技术 | Python从零开始系列连载(二十一)
编程小白 | 每日一练(175)
这道理放在编程上也一并受用。在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从编程小白进阶到高手,需要经历的是日积月累的学习,那么如何学习呢?当然是每天都练习一道题目!!
小林C语言
2019/06/10
4430
PAT算法题学习笔记
对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……
zhaokang555
2023/10/17
2630
PAT(乙级)1005
卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。
zy010101
2019/05/25
3730
【PAT乙级】继续(3n+1)猜想
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
喜欢ctrl的cxk
2019/11/08
3950
继续(3n+1)猜想
卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。
叶茂林
2023/07/28
2070
java中array的方法_array java
对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对n=3进行验证的时候,我们需要计算3、5、8、4、2、1,则当我们对n=5、8、4、2进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这4个数已经在验证3的时候遇到过了,我们称5、8、4、2是被3“覆盖”的数。我们称一个数列中的某个数n为“关键数”,如果n不能被数列中的其他数字所覆盖。
全栈程序员站长
2022/11/05
1.1K0
简单模拟
为了用事实说明挖据机技术到底哪家强,PAT组织了一场挖据机技能大赛。请根据比赛结果统计出技术最强的那个学校。
可定
2020/04/20
8180
简单模拟
PAT (Basic Level) Practice (中文)1005 继续(3n+1)猜想 (25 分)
卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。
glm233
2020/09/28
4620
PAT (Basic Level) Practice
卡拉兹(Callatz)猜想:对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 3n+1砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 3n+1,以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……
Naraku
2021/07/29
1.5K0
PAT (Basic Level) Practice
简单模拟答案
C语言的写法(不知字符那里该怎么改,总是才输入5行左右就异常,下次再看)(挖坑,待解决)
可定
2020/04/20
3870
简单模拟答案
Knowledge_SPA——精研查找算法
首先保证这一篇分析查找算法的文章,气质与大部分搜索引擎搜索到的文章不同,主要体现在代码上面,会更加高级,会结合到很多之前研究过的内容,例如设计模式,泛型等。这也与我的上一篇面向程序员编程——精研排序算法不尽相同。 关键字:二分查找树,红黑树,散列表,哈希,索引,泛型,API设计,日志设计,测试设计,重构 查找是在大量的信息中寻找一个特定的信息元素,在计算机应用中,查找是常用的基本运算。 当今世纪,IT界最重要的词就是“数据!数据!数据!”,高效检索这些信息的能力是处理他们的重要前提。数据结
文彬
2018/05/09
2.3K0
Knowledge_SPA——精研查找算法
相关推荐
PAT (Basic Level) Practice (中文)1001 害死人不偿命的(3n+1)猜想
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验