可曾听闻哥德巴赫猜想?

前言

        这是我们学校今年新生全家桶里的一道诈骗题,当时想了三四天,也搜不到答案,AI出来的看不懂。知道答案之后,真是破大防了,特此写一篇CSDN来吐槽一下。

一、题目

来分西瓜

二、我的心路历程

(一)遍历质数

        这道题与质数相关,又因为刚看过翁凯老师讲判断一个数是否为质数的视频,所以我想到的第一个方法就是遍历质数。就这样顺着这个思路敲了三四十行代码,快敲完了,才发现“分成若干部分”中的“若干”不知道怎么处理。后来才知道就算处理了,也肯定会TL(因为当时刚开始学,只会i=2;i<n;i++这种暴力试除法,还不会欧拉筛,甚至连i*i<n或sqrt(n)都不会)。

(二)并查集

        这个是我AI出来的方法,这个算法当时还没学,学长说我们应该寒假的时候才学,我也不会啊,代码都看不懂,哈哈哈。

三、题解:哥德巴赫猜想

哥德巴赫猜想
结合这两条,易知任意大于3的数都能分成若干个质数的和,代码也嘎嘎简单:

#include <bits/stdc++.h>
using namespace std;
#define endl "\n"

int main() {
    ios::sync_with_stdio(false);
    cout.tie(0);
    cin.tie(0);

    int m;
    cin >> m;

    if (m > 3) {
        cout << "YES";
    } else {
        cout << "NO";
    }

    return 0;
}

// ⠀⠀⠀             ⠀⢸⣿⣿⣿⠀⣼⣿⣿⣦⡀
// ⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⠀⠀⠀ ⠀⢸⣿⣿⡟⢰⣿⣿⣿⠟⠁
// ⠀⠀⠀⠀⠀⠀⠀⢰⣿⠿⢿⣦⣀⠀⠘⠛⠛⠃⠸⠿⠟⣫⣴⣶⣾⡆
// ⠀⠀⠀⠀⠀⠀⠀⠸⣿⡀⠀⠉⢿⣦⡀⠀⠀⠀⠀⠀⠀ ⠛⠿⠿⣿⠃
// ⠀⠀⠀⠀⠀⠀⠀⠀⠙⢿⣦⠀⠀⠹⣿⣶⡾⠛⠛⢷⣦⣄⠀
// ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣧⠀⠀⠈⠉⣀⡀⠀ ⠀⠙⢿⡇
// ⠀⠀⠀⠀⠀⠀⢀⣠⣴⡿⠟⠋⠀⠀⢠⣾⠟⠃⠀⠀⠀⢸⣿⡆
// ⠀⠀⠀⢀⣠⣶⡿⠛⠉⠀⠀⠀⠀⠀⣾⡇⠀⠀⠀⠀⠀⢸⣿⠇
// ⢀⣠⣾⠿⠛⠁⠀⠀⠀⠀⠀⠀⠀⢀⣼⣧⣀⠀⠀⠀⢀⣼⠇
// ⠈⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⡿⠋⠙⠛⠛⠛⠛⠛⠁
// ⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣾⡿⠋⠀
// ⠀⠀⠀⠀⠀⠀⠀⠀⢾⠿⠋

就这样敲了三四十行没过,敲了10行就AC了。我只是个蒟蒻,哪听说过什么哥德巴赫猜想,还不给点提示,真服了这些老六,防住了电信诈骗,没防住学长的诈骗。这道题我一辈子都不会忘,呜呜呜~

四、总结

        所以最后,我想说的是写题之前,先看清数据范围,算时间复杂度,根据时间复杂度去想你的代码咋写,是直接暴力?还是要用前缀和数组预处理?或者要用二分去找?筛质数的时候是暴力跑还是直接筛?实现每个部分功能的代码应该怎么敲?这些都是在敲代码之前就应该要知道的东西,别快敲完了才发现实现某个部分功能的代码不会敲,或者会TL

结语

我只是一个A C M预习时长两年半的蒟蒻练习生,喜欢暴力,打表,面向样例编程,请各位键盘侠手下留情。
两年半

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

-George-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值