Codeforces686C【dfs】
题意:
n,m<=1e9
设定一天n小时,一小时m分钟,
显示时间的是一个7进制的表,
问你在一天里出现多少个时刻,表中的数字要都不相同。
思路:
因为7进制,显示的数字肯定是0-7之间的。
然后就是搜一下,注意显示的方式,所以m分钟有几位就是显示几位
#include <bits/stdc++.h>
#include<algorithm>
using namespace std;
typedef __int64 LL;
int mm[25],hh[25];
bool vis[10];
LL ans,shi,fen;
int cnt1,cnt2;
LL n,m;
void dfs_hh(int num,LL shi)
{
if(num==cnt1)
{
if(shi<n)
{
ans++;
return;
}
}
for(int i=0;i<7;i++)
{
if(!vis[i])
{
shi+=(LL)pow(7,num)*(LL)i;
vis[i]=1;
dfs_hh(num+1,shi);
vis[i]=0;
shi-=(LL)pow(7,num)*(LL)i;
}
}
}
void dfs_mm(int num,LL fen)
{
if(num==cnt2)
{
if(fen<m)
{
dfs_hh(0,0);
return;
}
}
for(int i=0;i<7;i++)
{
if(!vis[i])
{
vis[i]=1;
fen+=(LL)pow(7,num)*(LL)i;
dfs_mm(num+1,fen);
vis[i]=0;
fen-=(LL)pow(7,num)*(LL)i;
}
}
}
int main()
{
scanf("%I64d%I64d",&n,&m);
LL nn,mm;
nn=n,mm=m;
if(nn>1) nn--;
if(mm>1) mm--;
cnt1=cnt2=0;
while(nn)
{
++cnt1;
nn/=7;
}
while(mm)
{
++cnt2;
mm/=7;
}
ans=0;
memset(vis,0,sizeof(vis));
dfs_mm(0,0);
printf("%I64d\n",ans);
return 0;
}
Codeforces686C【dfs】的更多相关文章
- 【第40套模拟题】【noip2011_mayan】解题报告【map】【数论】【dfs】
目录:1.潜伏者 [map] 2.Hankson的趣味题[数论]3.mayan游戏[dfs] 题目: 1. 潜伏者(spy.pas/c/cpp)[问题描述]R 国和S 国正陷入战火之中,双方都互派间谍 ...
- Kattis - glitchbot 【DFS】
Kattis - glitchbot [DFS] 题意 有一个机器人 刚开始在(0, 0),然后给出一个目标点,并且会给出一系列指令,但是其中会有一个指令是错误的.我们需要找出那个指令,并且改成正确的 ...
- HDU 6113 度度熊的01世界 【DFS】(2017"百度之星"程序设计大赛 - 初赛(A))
度度熊的01世界 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Su ...
- 【dfs】P1331 海战
题目描述 在峰会期间,武装部队得处于高度戒备.警察将监视每一条大街,军队将保卫建筑物,领空将布满了F-2003飞机.此外,巡洋船只和舰队将被派去保护海岸线.不幸的是因为种种原因,国防海军部仅有很少的几 ...
- 【dfs】p1731 生日蛋糕
1441:[例题2]生日蛋搞 [题目描述] 7月17日是Mr.W的生日,ACM-THU为此要制作一个体积为Nπ的M层生日蛋糕,每层都是一个圆柱体.设从下往上数第i(1≤i≤M)层蛋糕是半径为Ri, 高 ...
- 【dfs】LETTERS
1212:LETTERS [题目描述] 给出一个roe×colroe×col的大写字母矩阵,一开始的位置为左上角,你可以向上下左右四个方向移动,并且不能移向曾经经过的字母.问最多可以经过几个字母. [ ...
- 洛谷P1605 迷宫【dfs】
题目背景 迷宫 [问题描述] 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和 终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案.在迷宫 中移动有上下 ...
- 【dfs】BZOJ1703-[Usaco2007 Mar]Ranking the Cows 奶牛排名
[题目大意] 农夫约翰有N(1≤N≤1000)头奶牛,每一头奶牛都有一个确定的独一无二的正整数产奶率.约翰想要让这些奶牛按产奶率从高到低排序,约翰已经比较了M(1≤M≤10000)对奶牛的产奶率,但他 ...
- 【DFS】BZOJ3522-[Poi2014]Hotel
[题目大意] 给出一棵树,求三个节点使得它们两两之间的距离相等,问共有多少种可能性? [思路] 显然,这三个节点是关于一个中心点对称地辐射出去的. 枚举中心点,往它的各个子树跑Dfs.tmp[i]表示 ...
随机推荐
- git log 查看版本演变历史
1.查看git操作历史 $ git log #git 查看git操作历史 $ git log --oneline #git 简洁的查看git变更记录 $ git log -n4 --onelin ...
- 玩转Bash脚本:循环结构之while循环(转)
转自:http://blog.csdn.net/guodongxiaren/article/details/43341769 总第8篇 本系列(玩转Bash脚本)更多文章,请访问:http://b ...
- 生成可重集的排序 (白书P184)
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> us ...
- c程序设计语言第一章2
练习1.13编写一个程序,打印输入中单词长度的直方图.水平方向的直方图比较容易绘制,垂直方向的直方图则要困难些 #include <stdio.h> #include <stdlib ...
- 【转载】5种网络IO模型
同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出 ...
- Ubuntuserver版安装
近期因为工作的须要.又一次部署server.安装了Ubuntuserver版本号,依据当时遇到的一些问题,整理了下,为方便以后的使用做个记录. 因为直接安装server端.无法 ...
- v-for指令
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Centos-tomcat-安装配置apr
[root@zyzzw_jk tools]# tar -zxvf apr-1.5.2.tar.gz[root@zyzzw_jk tools]# tar -zxvf apr-util-1.5.4.tar ...
- 使用URL dispatcher的范例
在上面的一篇文章中,我们介绍了怎样使用URL disptacher.在这篇文章中,我们来通过一个范例更进一步来了解怎样实现它. 1)创建一个具有URL dispatcher的应用 我们首先打开我们的S ...
- Dom解析XMl文档
XMl文档 <?xml version = "1.0" encoding = "UTF-8"?> <books> <book bo ...