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

西部数码网站流量怎么充简易网站开发时长

西部数码网站流量怎么充,简易网站开发时长,wordpress数据库安装失败,毕业设计做系统和网站有什么区别数组A中给定可以使用的1~9的数&#xff0c;返回由A数组中的元素组成的小于n&#xff08;n > 0&#xff09;的最大数。 例如&#xff1a;A {1, 2, 4, 9}&#xff0c;n 2533&#xff0c;返回2499。题解贪心思路题目很好理解&#xff0c;但没写对呜呜呜#include <iostream…

数组A中给定可以使用的1~9的数,返回由A数组中的元素组成的小于n(n > 0)的最大数。 例如:A = {1, 2, 4, 9},n = 2533,返回2499。

题解

贪心思路

题目很好理解,但没写对呜呜呜

#include <iostream>
#include <vector>
#include <unordered_set>using namespace std;int getMaxD(vector<int> &a, int x)
{for (auto it = a.rbegin(); it != a.rend(); it++){if (*it < x){return *it;}}return 0;
}int solve(vector<int> &a, int n)
{// 分解 nvector<int> nvec;while (n > 0){int tmp = n % 10;nvec.push_back(tmp);n = n / 10;}// 排序可以使用的数组sort(a.begin(), a.end());// 记录有哪一些数字可以用unordered_set<int> st;for (auto v : a){st.insert(v);}// 存储答案vector<int> ans(nvec.size());// 需要特判一下数组只有一个的情况if (a.size() == 1){if (nvec[nvec.size() - 1] <= a[0]){int ans = 0;for (int i = 0; i < nvec.size() - 1; i++){ans *= 10;ans += a[0];}return ans;}else{int ans = 0;for (int i = 0; i < nvec.size() - 1; i++){ans *= 10;ans += a[0];}return ans;}}// 从给定的数字n的高位开始选择数字for (int i = nvec.size() - 1; i >= 0; i--){cout << i << endl;// 除了最后一位,其他位数能找到和原来数n的位数一样的,那就优先选if (i > 0 && st.find(nvec[i]) != st.end()){ans[i] = nvec[i];continue; // 选完后直接跳过}// 如果没找到一样的数字// 那就找一个比nvec[i]小的数字// 如果找到了,那后面就不用比较了,直接选最大的数字就行// 所以直接跳出auto d = getMaxD(a, nvec[i]);if (d > 0){ans[i] = d;break;}// 如果剩余数字都比当前n的位数上要大// 开始回溯,即上一位重新选择// 上一位通过getMaxD函数选择小于当前位数的数(从给定数字中)for (i++; i < nvec.size(); i++){ans[i] = 0;cout << i << endl;// 如果有,那就直接跳出循环,剩余位数选最大值即可d = getMaxD(a, nvec[i]);if (d > 0){ans[i] = d;break;}// 如果一直回溯到第一个数字了,都没找到合适的// 那说明和原来n数字一样长的答案不存在if (i == nvec.size() - 1){cout << i << endl;ans.resize(nvec.size() - 1);cout << ans.size() << endl;}}break;}int res = 0;// cout << ans.size() << endl;for (int i = ans.size() - 1; i >= 0; i--){res *= 10;if (ans[i] > 0){res += ans[i];continue;}res += a.back();}return res;
}int main()
{auto a = vector<int>{4};int n = 23333;int res = solve(a, n);cout << res << endl;return 0;
}

DFS

后面有空再补吧。

http://www.dtcms.com/a/536846.html

相关文章:

  • FFmpeg 基本数据结构 AVFrame分析
  • Kafka 相关内容总结
  • 霍邱网站设计10000ip网站怎么做
  • C++ 从零实现Json-Rpc 框架
  • 29. Makefile 创建和使用变量
  • Docker 安装和配置 Redis 完整指南
  • 高效对象池设计:提升Unity性能的关键
  • 网站建设需要了解哪些信息常州网站制作公司
  • 如何做正版小说网站工厂电商具体是做什么的
  • 磁盘和注册表清理工具
  • 【windows】证书引起的浏览器请求问题-https红色斜线-解决方法
  • mormot2创建一个httpserver
  • 科技类网站简介怎么做有哪些游戏可以做网站
  • 定制化TTS数据实践:解锁语音大模型的无限潜能
  • 微网站是什么嘉兴高端网站定制
  • 一分钟讲透:c++新特性string_view
  • sns社交网站 建设做网站图片尺寸
  • 营销网站结构网站免费优化平台
  • 免费视频模板网站制作微信网页
  • android实践:loadUrl执行JavaScript异常
  • FFmpeg 基本数据结构 AVCodecParser分析
  • celery知识点总结
  • langchain将用户问题转sql查询探索
  • compareAndSet怎么用
  • Skill Seeker——一站式自动化将文档网站、GitHub 仓库和 PDF 文件转换为可部署 AI 技能的深度解析
  • 浅谈 Agent 开发工具链演进历程
  • 帝国cms小说阅读网站模板果洛电子商务网站建设哪家快
  • 学校网站建设背景科技作品手工
  • SmartPLS下载安装教程(附安装包)SmartPLS 4.1保姆级图文教程
  • ECR扫描管理功能完整实现:提升云原生镜像安全管控效率