【每日一题】8月28日题目精讲 编号
链接:https://ac.nowcoder.com/acm/problem/19925
来源:牛客网

题目描述

你需要给一批商品编号,其中每个编号都是一个7位16进制数(由0~9,
a-f组成)。为了防止在人工处理时不小心把编号弄错,要求任意两个编号至少有三个位置对应的数字不相同。第一个编号为0000000,第二个编号为不违反上述规定的前提下最小的编号,…,每次分配一个新编号时,总是选择不和前面编号冲突的最小编号(注意编号都是16进制数,可以比较大小)。
按此规律,前面若干编号分别是:0000000, 0000111, 0000222, …, 0000fff, 0001012,
0001103,0001230,0001321,0001456,… 输入k,你的任务是求出第k小的编号。

输入描述:
第一行为整数k。
输出描述:
输出第k小的编号(字母必须输出小写)。输入保证这个编号存在。
示例1
输入
复制

20

输出
复制

0001321

备注:
对于30%的数据,k≤200;
对于70%的数据,k≤10000;
对于100%的数据,k≤200000。

题解:

暴力出奇迹。。。
题目要求至少有三个位置对应的数字不相同
一个七个数,所以存五个数的信息就行,因为如果五个数一样那肯定不符合要求
七个选五个一共是21种方案
dp[i][a][b][c][d][e]表示第i个位置,5个位置的数是a,b,c,d,e
如果一个数可行也就是21种位置上的数都没被排除

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
using namespace std;
#define MAXN 10
#define for10(x) for (x=0;x<16;(x)++)int a[30][16][16][16][16][16];
int main() {/freopen("loop05.in","r",stdin);//freopen("loop05.out","w",stdout);int a1,a2,a3,a4,a5,a6,a7,k,s=0;cin>>k;for10(a1)for10(a2)for10(a3)for10(a4)for10(a5)for10(a6)for10(a7) {if(!a[0][a3][a4][a5][a6][a7]&&!a[1][a2][a4][a5][a6][a7]&&!a[2][a2][a3][a5][a6][a7]&&!a[3][a2][a3][a4][a6][a7]&&!a[4][a2][a3][a4][a5][a7]&&!a[5][a2][a3][a4][a5][a6]&&!a[6][a1][a4][a5][a6][a7]&&!a[7][a1][a3][a5][a6][a7]&&!a[8][a1][a3][a4][a6][a7]&&!a[9][a1][a3][a4][a5][a7]&&!a[10][a1][a3][a4][a5][a6]&&!a[11][a1][a2][a5][a6][a7]&&!a[12][a1][a2][a4][a6][a7]&&!a[13][a1][a2][a4][a5][a7]&&!a[14][a1][a2][a4][a5][a6]&&!a[15][a1][a2][a3][a6][a7]&&!a[16][a1][a2][a3][a5][a7]&&!a[17][a1][a2][a3][a5][a6]&&!a[18][a1][a2][a3][a4][a7]&&!a[19][a1][a2][a3][a4][a6]&&!a[20][a1][a2][a3][a4][a5]) {k--;if(!k) {printf("%x%x%x%x%x%x%x\n",a1,a2,a3,a4,a5,a6,a7);return 0;}a[0][a3][a4][a5][a6][a7]=true;a[1][a2][a4][a5][a6][a7]=true;a[2][a2][a3][a5][a6][a7]=true;a[3][a2][a3][a4][a6][a7]=true;a[4][a2][a3][a4][a5][a7]=true;a[5][a2][a3][a4][a5][a6]=true;a[6][a1][a4][a5][a6][a7]=true;a[7][a1][a3][a5][a6][a7]=true;a[8][a1][a3][a4][a6][a7]=true;a[9][a1][a3][a4][a5][a7]=true;a[10][a1][a3][a4][a5][a6]=true;a[11][a1][a2][a5][a6][a7]=true;a[12][a1][a2][a4][a6][a7]=true;a[13][a1][a2][a4][a5][a7]=true;a[14][a1][a2][a4][a5][a6]=true;a[15][a1][a2][a3][a6][a7]=true;a[16][a1][a2][a3][a5][a7]=true;a[17][a1][a2][a3][a5][a6]=true;a[18][a1][a2][a3][a4][a7]=true;a[19][a1][a2][a3][a4][a6]=true;a[20][a1][a2][a3][a4][a5]=true;}}return 0;
}

【每日一题】8月28日题目精讲 编号相关推荐

  1. 牛客网 每日一题 7月23日题目精讲—wpy的请求

    来源:牛客网: 文章目录 wpy的请求 题解: 代码: wpy的请求 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K Special Judge ...

  2. 牛客网【每日一题】4月28日题目精讲 美味菜肴

    链接: 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 题目描述 小明是个大厨,早上起来他开始一天的工作 ...

  3. 牛客网 【每日一题】5月28日题目精讲 Protecting the Flowers

    链接: 文章目录 题目描述 题意: 题解: 代码: 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 题目 ...

  4. 【每日一题】7月17日题目精讲—BOWL 碗的叠放

    [每日一题]7月17日题目精讲-BOWL 碗的叠放 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld ...

  5. 【每日一题】7月15日题目精讲—生日快乐

    [每日一题]7月15日题目精讲-生日快乐 [SCOI2009]生日快乐 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO For ...

  6. 【每日一题】7月13日题目精讲—Kingdom

    [每日一题]7月13日题目精讲-Kingdom 文章目录 题目描述 题解: 代码: 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 1048576K,其他语言2097152K 64bi ...

  7. 【牛客每日一题】tokitsukaze and Soldier 题目精讲 贪心、优先队列、堆

    链接:https://ac.nowcoder.com/acm/problem/50439 来源:牛客网 ACM在线模板 今天才发现牛客推出了一个每日一题的版块,3月25号就开始了,今天才发现,赶紧补救 ...

  8. 【每日一题】5月7日题目精讲 「火」皇家烈焰

    链接: 「火」皇家烈焰 文章目录 题目描述 题解: 代码: 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: % ...

  9. 牛客网【每日一题】4月14日题目精讲 Xorto

    文章目录 题目描述 题解: 代码: 扩展 传送 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format:%lld 题目描述 ...

最新文章

  1. 漫谈时序设计(3)走进时序约束的大门!
  2. 如何将本地项目发布到gitee?
  3. DataKeyNames
  4. Redis源码分析(零)学习路径笔记
  5. VS2010删除所有断点时不弹出提示窗口
  6. MySQL必知必会(一)
  7. 吉林大学计算机专业张文政,张晋东 - 吉林大学 - 计算机科学与技术学院
  8. EndNoteX9 使用笔记
  9. python实现Kmeans算法
  10. 【历史上的今天】4 月 13 日:Damn Small Linux 首次发布;谷歌关闭短网址服务;数学先驱出生
  11. 前后端分离与耦合架构
  12. qt 处理ORACLE的AMERICAN_AMERICA.US7ASCII编码
  13. 《超越感觉:批判性思考指南》读书笔记
  14. 经典算法——爬楼梯(解法归纳)(学习笔记)
  15. c语言初阶(2-函数-上篇)
  16. 技术概况python_《技》字意思读音、组词解释及笔画数 - 新华字典 - 911查询
  17. 在python中逻辑量有_(五)我的魔法竟有了一丝逻辑
  18. 微软发布会精华回顾:“台式电脑”抢了风头
  19. 多群直播软件有哪些?一起学堂多群直播助手好用吗?
  20. Winform实现光盘刻录功能

热门文章

  1. 数学建模,还得这样学!
  2. 21个令程序员泪流满面的瞬间【第二弹】
  3. spark 连接mysql 命令_spark-submit命令包括mysql连接器
  4. 哪种HTML列表会自动编号,HTML列表的种类
  5. .net post提交后接收返回数据_Ajax提交表单的方式
  6. apache weblogic ssl linux,apache基于ssl配置weblogic(完结篇)
  7. java locale.us_JAVA实现国际化
  8. 怎么判断再一个局域网内一个ip被两台机器占用_交换机与 VLAN 到底是怎么来的...
  9. leetcode-345-翻转字符串中的元音字母
  10. 7-53 两个有序序列的中位数 (25 分)(思路加详解)用STL容器中的set容器的自动去重过不去