博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Non-random numbers
阅读量:4204 次
发布时间:2019-05-26

本文共 971 字,大约阅读时间需要 3 分钟。

2016-2017 ACM中部地区的俄罗斯四分之一决赛编程比赛
H.非随机数
Vasya是一个学生,谁在玩一个随机数发生器和
注意到它永远不会生成具有等于的特定数字的值的数字
该数字在数字中的位置。
瓦西亚变得好奇,他来发现以下:
发生器接受的输入是一个正整数n - 
生成的随机数中的位数。
输出是由n个数字组成的正整数
前导零。
在i位置(从左侧)生成的数字不能为
数字i。
例如,如果我们想要生成器生成一个单数字的数字,它会
生成除0或1以外的任何单位数字。如果是双位数字,
该输出将是除了10,11,12,13,14,15,16,17,18,19,22,32,42,43,44和50之外的任何值。
52,62,72,82或92。
小学生决定找出可以生成多少不同的数字
任何给定的n位数字。
你的任务是写一个程序,将帮助小学生解决这个问题。
限制
1≤n≤100。
输入
输入文件包含单个整数n - 生成的数字位数
随机数。
输出
输出文件必须包含一个整数 - 可能的随机数字ndigit
数字。输出必须没有前导零。
例子
Input.txt Output.txt
1 8
2 72

12 344373768000

#include
#include
#include
#include
#define ll long long#define maxn 10467397using namespace std;int main(){ freopen("input.txt","r",stdin); freopen("output.txt","w",stdout); int n; ll ans; while(cin>>n) { ll ans=8; string data="344373768"; if(n<=9) { for(int i=2; i<=n; i++) { ans=ans*9; } cout<
<

转载地址:http://jpali.baihongyu.com/

你可能感兴趣的文章
剑指Offer MergeOrderedList 合并两个排序的链表
查看>>
剑指Offer LevelTraversalTree 层序遍历二叉树
查看>>
IDEA Maven搭建的Web项目出现ClassNotFoundException
查看>>
TCP/IP 三次握手建立连接和四次挥手释放连接
查看>>
操作系统 大端和小端(Big endian and Little endian)
查看>>
C++ 内联函数
查看>>
算法 递归和循环的转换
查看>>
OSI 七层模型详解
查看>>
Mybatis 获取不到接口参数问题
查看>>
数据库原理 数据库全局概览
查看>>
数据库原理 数据库组件概况
查看>>
MySQL 触发器的使用
查看>>
MySQL 对于千万级的大表要怎么优化?
查看>>
MySQL 加锁处理分析
查看>>
MySQL 聚簇索引和非聚簇索引
查看>>
MySQL 覆盖索引
查看>>
MySQL 主从复制原理
查看>>
MySQL InnoDB引擎的索引和存储结构
查看>>
Http 请求和响应全过程
查看>>
Servlet 生命周期和工作原理
查看>>