ARC 075 D Mirrored - 搜索
首先把N写出来,然后把r(N)-N写出来,发现这玩意个位%10是个定植,要么是x要么是x-10(0<=x< 10)。然后再确定十位数,依次类推,2的len/2次枚举每一位到底是啥即可。注意当x=0的时候只有一种可能。
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#define lint long long
#define debug(x) cerr<<#x<<"="<<x
#define sp <<" "
#define ln <<endl
using namespace std;
int cnt[30];lint tot_ans=0,w[30];
inline int gv(lint d,int x) { while(x--) d/=10;return (int)((d%10+10)%10); }
inline int dfs(int x,int y,lint d,lint ans=1)
{//debug(x)sp,debug(y)sp,debug(d)sp,debug(ans)ln;if(x>y) return tot_ans+=ans*(d==0),0;if(x==y) return tot_ans+=ans*10ll*(d==0),0;int t=gv(d,x);//debug(t)ln;dfs(x+1,y-1,d+t*(w[y]-w[x]),ans*(cnt[t+10]-(x==0)));if(t) dfs(x+1,y-1,d+(t-10)*(w[y]-w[x]),ans*(cnt[t]-(x==0)));return 0;
}
inline lint getans(int d,int n)
{w[0]=1;for(int i=1;i<=n;i++) w[i]=w[i-1]*10;memset(cnt,0,sizeof cnt);for(int i=0;i<=9;i++)for(int j=0;j<=9;j++) cnt[i-j+10]++;return tot_ans=0,dfs(0,n,d),tot_ans;
}
int main()
{int d,ds,c=-1;scanf("%d",&d),ds=d;while(ds) ds/=10,c++;lint ans=0ll;for(int i=c;i<=18;i++) ans+=getans(d,i);return !printf("%lld\n",ans);
}
ARC 075 D Mirrored - 搜索相关推荐
- 【arc075f】AtCoder Regular Contest 075 F - Mirrored
题意 给定一个数x,问有多少个正整数y,使得rev(y)-y==x 其中rev(x)表示x按位翻转之后得到的数. x<=1e9 做法 首先通过打表发现,这个答案不会很大. 这就说明解相当地松弛. ...
- Visual Studio 2008 每日提示(八)
#071.给所有快速查询的结果标记上书签 原文链接:Did you know... You can bookmark all of your Quick Find results 操作步骤: 在&qu ...
- c语言拓扑多边形自动生成,拓扑多边形生成算法(C++源码)一
程序主函数 #include "stdafx.h" #include "CreatePolygons.h" #include "CreateTopol ...
- 最新织梦DEDECMS全站目录化伪静态设置(网址和生成静态地址一样、电脑和手机访问地址也一样)
最新织梦DEDECMS全站目录化伪静态设置,伪静态设置成功后,网址和生成静态地址一样.电脑和手机访问地址也一样. 如果你电脑端是生成静态而手机端是动态的话,请查看织梦手机端伪静态设置http://ww ...
- 织梦5.7版本后台栏目新增“栏目图片” / “图片地址” / “缩略图” 功能的方法
"栏目图片 / 栏目缩略图" 搭配"外部链接"功能真的非常好用,织梦5.7版本的发现栏目没有此功能,那只能自己手动添加了.添加的时候大家不要怕麻烦,按照步骤仔细 ...
- 简单织梦分页显示方式条数限制
1.动态分页 找到网站根目录/include/ arc.listview.class.php 搜索GetPageListDM动态分页 大概位置1177在便利的for前面添加 for($j;$j< ...
- ubuntu系统连接微软microsoft arc touch鼠标搜索不到鼠标设备
试了无数次发现始终找不到微软鼠标,就在想要放弃的时候,我决定找个其他ubuntu系统试一下,结果发现我另外一个本子竟然可以连接.我总觉得是通过蓝牙连接的,而且都是蓝牙4.0的协议,即便连接不上,也不至 ...
- Atcoder F - Mirrored(思维+搜索)
题目链接:http://arc075.contest.atcoder.jp/tasks/arc075_d 题意:求rev(N)=N+D的个数,rev表示取反.例如rev(123)=321 题解:具体看 ...
- dede php 调用自定义字段,在dedecms搜索结果列表页调用自定义字段的方法(绝对可用)...
关于在dedecms搜索结果列表页调用自定义字段的方法比较多有些教程都写得比较含糊,经过织梦者的测试今天推荐一个比较有效的方法给大家,方法是从网络中搜到的,但是绝对可用 打开 include/exte ...
最新文章
- Dockerfile ENV和ARG的区别与应用
- 1.20 正则表达式详解
- Python面试题之装饰器漫谈
- Java之new一个对象简单过程
- xcode5. 安装cocos2d-x 学习中。。。
- 昂着头的艺术-伯爵在城堡的日记
- c语言分治算法求最大值,分治法找最大值(C語言)
- html border阴影效果_【开发小技巧】026—如何使用HTML和CSS创建浮动框阴影效果?...
- Hbase Compaction 源码分析 - CompactSplitThread 线程池选择
- jquery+ajax 实现text框模糊搜索并可利用listbox实时显示模糊搜索列表结果
- 拼图java监听器,Android 简单的实现滑块拼图验证码功能
- CO1 Introduction
- 2008秋季-计算机软件基础-0917课堂用例(1)
- Dubbo中多注册中心问题与服务分组
- adb脚本选择语句_Python开发:王者荣耀自动刷金币脚本
- opencv实现摄像头的实时人脸识别
- 华中科技大学计算机启明班,华中科技大学启明学院创新实验班管理办法
- 什么是CPU主频、外频、倍频?之间关系是?
- [创业-18]:财务报表之资产负债表
- Android 动画系列二之补间动画