ABC 363
ABC 363
D - Palindromic Number
复盘一下几个细节:
- 最后得到的 \(n\) 代表的是答案在长度为 \(i\) 的回文数中排第几,所以最终答案要加上长度更短的
- \(1 \sim 9\) 是要算的
- 长度奇偶的输出细节
- 长度为 \(1 \sim i\) 的回文数个数 \(10^{\frac{(i+1)}{2}}\)
- 长度为 \(i\) 的回文数个数 \(10^{\frac{(i+1)}{2}}-10^{\frac{(i+1)}{2}-1}\)
#include<bits/stdc++.h>
#define F(i,l,r) for(int i(l);i<=r;++i)
#define G(i,r,l) for(int i(r);i>=l;--i)
#define int long long
using namespace std;
using ll = long long;
int n,cnt=0;
int g[30],a[30];
signed main(){
ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
cin>>n;
--n;
if(!n) return cout<<0,0;
g[0]=1;
F(i,1,18) g[i]=g[i-1]*10;
F(i,1,50){
int num=g[(i+1)/2]-g[(i+1)/2-1];
// cout<<i<<" "<<num<<" "<<n<<"\n";
if(n>num) n-=num;
else{
n+=g[(i+1)/2-1]-1;
while(n) a[++cnt]=n%10,n/=10;
G(j,cnt,1) cout<<a[j];
if(i&1) F(j,2,cnt) cout<<a[j];
else F(j,1,cnt) cout<<a[j];
break;
}
}
return 0;
}
ABC 363的更多相关文章
- 【IOS】将一组包含中文的数据按照#ABC...Z✿分组
上一篇文章[IOS]模仿windowsphone列表索引控件YFMetroListBox里面 我们一步步的实现了WindowsPhone风格的索引. 但是有没有发现,如果你要实现按照字母排序,你还得自 ...
- 在JS中关于堆与栈的认识function abc(a){ a=100; } function abc2(arr){ arr[0]=0; }
平常我们的印象中堆与栈就是两种数据结构,栈就是先进后出:堆就是先进先出.下面我就常见的例子做分析: main.cpp int a = 0; 全局初始化区 char *p1; 全局未初始化区 main( ...
- 学习Python的ABC模块(转)
http://yansu.org/2013/06/09/learn-Python-abc-module.html 1.abc模块作用 Python本身不提供抽象类和接口机制,要想实现抽象类,可以借助a ...
- 将abc的全排列输出
#include "iostream" using namespace std; void swap(char a[],int i,int j){ char temp; temp= ...
- 关于String str =new String("abc")和 String str = "abc"的比较
String是一个非常常用的类,应该深入的去了解String 如: String str =new String("abc") String str1 = "abc&qu ...
- IE9 使用document.getElementsByName("abc") 不能获取到名称相同SPAN元素
<div name="abc"></div> <input name="abc" type="text" /& ...
- 经典String str = new String("abc")内存分配问题
出自:http://blog.csdn.net/ycwload/article/details/2650059 今天要找和存储管理相关的一些知识,网上搜了半天也没有找到完善的(30%的程度都不到),没 ...
- 再谈ABC
最近一直在看蒋老师那13篇<我的WCF之旅>,终于看完了,看得很慢,记得最初出来工作的时候那时的技术总监建议我去看的,可几个月前我才开始看,看了几个月才把13篇看完.第一篇WCF的博文是我 ...
- Redis学习笔记之ABC
Redis学习笔记之ABC Redis命令速查 官方帮助文档 中文版本1 中文版本2(反应速度比较慢) 基本操作 字符串操作 set key value get key 哈希 HMSET user:1 ...
- WCF ABC
参考文献 http://blog.sina.com.cn/s/blog_7358f8b201012pnt.html http://www.cnblogs.com/CodingPerfectWorld/ ...
随机推荐
- CSV文件导出详细讲解
一.准备jar 如下所以放入maven配置文件中 二.controller层 三.SERVICE层 四.CsvUtil文件 /** * csv文件导入导出 */public class CsvUti ...
- 我的 mac 生产力工具
应用名称 说明 安装命令 Homebrew mac 上的强大包管理器 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com ...
- openFile(/tmp/spring.log,true) call failed. java.io.FileNotFoundException: /tmp/spring.log (Permission denied)
ERROR [main] SpringApplication: Application run failed java.lang.IllegalStateException: Logback conf ...
- vue中代理解决跨域
跨域是什么 简单的讲就是你在一个地方使用另一个地方的资源,被浏览器给挡下来了,不让不用!当然,它挡下来是有自己理由的:为了安全(╬▔皿▔)╯. 解决跨域 我是用vue开发的,就vue代理模式解决跨域说 ...
- RxJS 系列 – Conditional and Boolean Operators
前言 前几篇介绍过了 Creation Operators Filtering Operators Join Creation Operators Error Handling Operators T ...
- ubuntu22.04安装DBeaver
要在 Ubuntu22.04 上安装 DBeaver,可以选择使用 Ubuntu 软件中心的图形界面方法或使用命令行方法通过官方 DBeaver 仓库或 Snap 包安装. 方法一:从官方仓库安装 D ...
- SpringMVC——SSM整合——项目异常处理
项目异常处理 项目异常分类 业务异常 不规范的用户行为产生的异常 规范的用户行为产生的异常 系统异常 项目运行过程中可预计且无法避免的异常 其他异常 编程人员未预期到的异常 项 ...
- PyCharm 的一些基本设置&&常用插件&&快捷键
PyCharm一些基本设置 1.主题色彩 2.添加设置:Ctrl+鼠标滚轮上下调节字体大小 3. 中文语言包 4.翻译插件 5.快捷键
- Servlet—— urlPattern配置
Servlet urlPattern配置 Servlet要想被访问,必须配置其访问路径(urlPattern) 1.一个Servlet可以配置多个 urlPattern 2.ur ...
- docker基础镜像java版本选择和推荐
背景 在编写dockerfile时,基础镜像要么太大,要么缺少jdk:dockerhub中的openjdk五花八门,不知道选择哪个 解决方案 我在项目中通常选择 openjdk作为基础镜像 FROM ...