博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CF 354E DFS
阅读量:6230 次
发布时间:2019-06-21

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

竟然搜过去了。。

显然从后往前搜索。每次判断最后若干位是否和目标一致。

对于每一位,可以填i个0 j个4 k个7 其中i+j+k==6

先预处理出这个。然后按位搜索。

#include 
#include
#include
using namespace std;int a[100][4];int all;typedef unsigned long long ll;ll M;int d[100],np;ll te[100];void prework(){ all=0; for (int i=0;i<=6;i++) for (int j=0;j<=6-i;j++){ int k = 6-i-j; a[++all][0] = j*4+k*7; a[all][1] = i; a[all][2] = i+j; a[all][3] = i+j+k; } te[0] =1; for (int i=1;i<=18;i++) te[i]=te[i-1]*10;}bool check(ll a,ll b,int p){ int aa = a/te[p-1]%10; int bb = b/te[p-1]%10; return aa==bb;}bool work(ll mul,ll now,int p){ if (mul==now) return true; for (int i=1;i<=all;i++){ if (mul-now
> T; ll N; while(T--){ memset(dig,0,sizeof(dig)); cin >> N; if (work(N,0,0)) output(); else cout << -1 << endl; }}
View Code

 

转载于:https://www.cnblogs.com/qinhang3/p/3370440.html

你可能感兴趣的文章
大型互联网 b2b b2c o2o 电子商务微服务云平台
查看>>
Flutter之可滑动Widget
查看>>
富文本编辑器-CKeditor5
查看>>
前端基础22:数组迭代基本方法
查看>>
GGally与pairs相关关系图_史上最全(一)
查看>>
从内存映射mmap说开去
查看>>
Swift4如何扫描二维码了解一下
查看>>
散列表:如何实现word编辑器的拼写检查?
查看>>
可用的哈希函数(一)
查看>>
js关于数组常用函数
查看>>
Swift 项目总结 02 常用分类方法
查看>>
字符串&Math&Date
查看>>
复习webpack4之环境变量
查看>>
Linux - IO
查看>>
给大家整理了19个pythonic的编程习惯
查看>>
JVM之内存回收算法
查看>>
阿里高管告诉你 一个小猿如何更快的成长?
查看>>
多线程基础之synchronized和volatile
查看>>
52ABP前端升级2.0.x指南
查看>>
vue中组件之间的通信
查看>>