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

L3-027 可怜的复杂度(纯暴力)

暴力解答,肯定超时,因为我刚开始把所有答案,存到了ans这个vector里面了,然后进行枚举情况,后面发现因为这个阶数很高的时候,就会直接炸内存,所以我直接选择了在dfs里面进行统计答案,我是纯暴力,没有啥优化思路。

我觉得你们可以试试,这个算贡献优化一下,或者枚举这么多优化优化,或者看我暴力把所有情况观察观察,看有没有啥规律或者潜在的计数优化地方。我没看出来,我比较菜,只会暴力。

只能拿十三分,纯暴力。

#include<bits/stdc++.h>
using namespace std;
const int maxn=2e5+100;
const int mod=998244353;
vector<vector<int>>ans;
vector<int> temp;
int n,m;
int a[maxn];
int sum=0;
int get_num(vector<int> v)
{
    set<vector<int>>s;
    for(int i=0;i<v.size();i++)
    {
        for(int j=i;j<v.size();j++)
        {
            vector<int>te;
            for(int k=i;k<=j;k++){
                te.push_back(v[k]);
            }
            s.insert(te);
        }
    }
    return s.size()%mod;
}
void dfs(int x)
{
    if(x==n+1)
    {
        sum=(sum+get_num(temp))%mod;
        return;
    }
    for(int i=1;i<=m;i++)
    {
        temp.push_back(m*a[x]+i);
        dfs(x+1);
        temp.pop_back();
    }
}

void solve() {
    cin>>n>>m;
    sum=0;
    for(int i=1;i<=n;i++) cin>>a[i];
    dfs(1);
    cout<<sum%mod<<"\n";
    ans.clear();
}
signed main()
{
    ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
    int T;T=1;
    cin>>T;
    while(T--){
        solve();
    }
}

相关文章:

  • 供应链管理:供应链管理的边界
  • HTTP协议 --- 超文本传输协议 和 TCP --- 传输控制协议
  • 什么是端点日志监控
  • spark中,shuffle read和shuffle write的先后顺序是什么
  • 测试知识点总结
  • 记录学习的第二十五天
  • 自动化三维扫描:CASAIM外观尺寸智能检测
  • Makefile教程
  • 论文学习:《EVlncRNA-net:一种双通道深度学习方法,用于对实验验证的lncRNA进行准确预测》
  • 操做系统----第二章:多进程图像之CPU管理
  • PTA | 实验室使用排期
  • Arduino Uno R3连接HC-03
  • MVC 模式深度解析与 Spring 框架实践研究
  • Python运算符
  • MySQL存过
  • VirtualBox 无法枚举 USB 设备的问题
  • 力扣刷题HOT100——438.找到字符串中所有字母异位词
  • DAY 44 leetcode 28--字符串.实现strStr()
  • 【技术文章的标准结构与内容指南】
  • GIC驱动程序分析
  • 五一假期多地政府食堂对外开放:部分机关食堂饭菜“秒没”
  • 美乌矿产协议预计最早于今日签署
  • 五一去哪儿| 追着花期去旅行,“赏花经济”绽放文旅新活力
  • 俄罗斯纪念卫国战争胜利80周年阅兵式首次彩排在莫斯科举行
  • 浦发银行一季度净利175.98亿增1.02%,不良率微降
  • 言短意长|政府食堂、停车场开放的示范效应