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

建立自己的网站中国营销传播网

建立自己的网站,中国营销传播网,wordpress设置关键词,深圳代理记账公司前十名题目简述: 给定一个整数n,可以给n加上仅由9组成的整数(9,99,999,9999......),问最少进行多少次可以使得n的任一数位上出现7? 思路: 观察规律,看…

题目简述:

给定一个整数n,可以给n加上仅由9组成的整数(9,99,999,9999......),问最少进行多少次可以使得n的任一数位上出现7?

思路:

观察规律,看看加上这个整数后对n的影响,可以发现对应数位上的数+上9会使得当前数位的值-1,可以根据这个特性求解;

这时我们可以发现次数最多不会超过9(对于6,-9次1就会变成7),次数很小,可以从小到大依次枚举次数

但考虑9很奇怪,不好想,我们可以换一种角度,把9看成10-1;对于n我们加几次就会-几次1,所以问题就变成了n-i加10,100等何时最少次数出现7(变成了可以对每一位+1,就很简单了);

现在我们可以进一步想到,次数最多不会超过7,因为对于n-i,最坏情况我们可以在最高位的前一位+高于n-i的数位的10的次幂,+7次便会符合条件

对于每一个n-i,我们枚举他的每一位数,对于符合条件的数直接输出即可,因为我们是从小到大枚举的;

总代码:

#include<bits/stdc++.h>
using namespace std;
#define int long long
#define endl "\n"
const int N=5e5+10;
void solve(){int n;cin >> n;for (int i=0;i<7;i++) {string s=to_string(n-i);for (auto x:s) {int t=x-'0';if (t==7) {cout << i << endl;return ;}else if (t<7&&7-t==i) {cout << i << endl;return ;}}}cout << 7 << endl;
}
signed main(){ios::sync_with_stdio(false);cin.tie(nullptr);int q=1;cin>>q;while(q--) solve();return 0;
}

http://www.dtcms.com/wzjs/435454.html

相关文章:

  • 高校网站建设费用手机优化器
  • 响应式网站企业网络营销成功案例分析其成功原因
  • 中国建设银行的网站设计搜盘 资源网
  • vs网站制作渠道网
  • 学校网站建设策划书模板网络营销策略的内容
  • 定制网站的优势西安百度网站排名优化
  • 华东建设发展设计有限公司网站抖音视频排名优化
  • 加强关工委网站建设开发制作app软件
  • 南通网站设计制作公司如何制作网页最简单的方法
  • 徐州网站建设公司品牌网
  • 整站seo运营网络营销软文范例300
  • 北京做网站建设的公司哪家好网络推广员的前景
  • 哪里有建设好的网站短链接在线生成免费
  • 网站建设网络科技公司加盟百度网页版入口
  • 做网站编辑要会什么今天刚刚发生的新闻事故
  • 郑州市汉狮做网站合肥网络推广软件
  • 免费排版网站佛山seo技术
  • 有哪些做企业点评的网站企业文化
  • 门户网站网页设计网络营销公司做什么
  • 领秀网站建设网址大全实用网址
  • 动态网站制作基础建议seo云优化公司
  • 网站建设属于应用软件吗温州seo招聘
  • 瑞安市做网站网络推广的概念
  • 网站运营需要多少钱nba湖人最新新闻
  • 电子商务网站建设规划论文关键词林俊杰mp3在线听
  • 网站运维合同房地产销售
  • 北京做网站哪家公司好百度账号管理
  • 泰安人才网最新招聘seo网络推广案例
  • 做轻淘客网站要多大的空间网站百度收录查询
  • 建设项目招标网站济南全网推广