关于T3 O(n^3) 能草过去这件事

一开始我写了个暴力:

/*
 * @Author: Aisaka_Taiga
 * @Date: 2023-08-27 19:42:45
 * @LastEditTime: 2023-08-27 20:33:48
 * @LastEditors: Aisaka_Taiga
 * @FilePath: \Desktop\牛客C.cpp
 * 心比天高,命比纸薄。
 */
#include <bits/stdc++.h>

#define int long long
#define N 1000100

using namespace std;

int ans, n;
char s[N];

signed main()
{
    scanf("%s", s + 1);
    n = strlen(s + 1);
    for(int i = 1; i <= n; i ++)
    {
        for(int j = i + 1; j <= n; j ++)
        {
            int c1 = 0, c2 = 0;
            for(int k = i; k <= j; k ++)
            {
                if (s[k] - '0' == (k & 1)) c1 ++;
                if (s[k] - '0' == ((k + 1) & 1)) c2 ++;
            }
            ans += min(c1, c2);
        }
    }
    cout << ans << endl;
    return 0;
}

然后T了,我就开始想正解,赛后我问另一个人怎么做的,他说暴力不就行吗。

然后这是 AC 代码:

/*
 * @Author: Aisaka_Taiga
 * @Date: 2023-08-27 19:42:45
 * @LastEditTime: 2023-08-27 20:33:48
 * @LastEditors: Aisaka_Taiga
 * @FilePath: \Desktop\牛客C.cpp
 * 心比天高,命比纸薄。
 */
#include <bits/stdc++.h>

// #define int long long
#define N 1000100

using namespace std;

int ans, n;
char s[N];

signed main()
{
    scanf("%s", s + 1);
    n = strlen(s + 1);
    for(int i = 1; i <= n; i ++)
    {
        for(int j = i + 1; j <= n; j ++)
        {
            int c1 = 0, c2 = 0;
            for(int k = i; k <= j; k ++)
            {
                if (s[k] - '0' == (k & 1)) c1 ++;
                if (s[k] - '0' == ((k + 1) & 1)) c2 ++;
            }
            ans += min(c1, c2);
        }
    }
    cout << ans << endl;
    return 0;
}

是的把第11行的define注释掉就A了。

我怎么也想不到暴力能草过去啊??

全部评论
离谱
点赞 回复 分享
发布于 2023-08-27 20:57 广东
数据弱了
点赞 回复 分享
发布于 2023-08-27 21:20 河北
555我也用了define int long long
点赞 回复 分享
发布于 2023-08-27 21:23 广东
这就是用 c++ 的好处吗
点赞 回复 分享
发布于 2023-08-27 22:17 安徽

相关推荐

昨天 22:55
已编辑
叮咚买菜
牛客吹哨人:建议细说...哨哥晚点统一更新到黑名单:不要重蹈覆辙!25届毁意向毁约裁员黑名单https://www.nowcoder.com/discuss/1317104
叮咚买菜稳定性 10人发布 投递叮咚买菜等公司10个岗位 >
点赞 评论 收藏
分享
11-09 01:22
已编辑
东南大学 Java
高级特工穿山甲:羡慕,我秋招有家企业在茶馆组织线下面试,约我过去“喝茶详谈”😢结果我去了发现原来是人家喝茶我看着
点赞 评论 收藏
分享
11-08 16:53
门头沟学院 C++
投票
滑模小马达:第三个如果是qfqc感觉还行,我签的qfkj搞电机的,违约金也很高,但公司感觉还可以,听说之前开过一个试用转正的应届生,仅供参考。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 10:46
点赞 评论 收藏
分享
3 收藏 评论
分享
牛客网
牛客企业服务