codeforces 897B Chtholly's request 偶数长度回文数
codeforces 897B Chtholly's request
题目链接:
http://codeforces.com/problemset/problem/897/B
思路:
暴力求出这100000个偶数回文数,说是暴力,其实是直接求出,O(n)。然后累加求和取模即可。注意WA test 12是因为没有求导最后一个回文数,心痛啊,调了一个半小时最后没检查出来,一定要注意范围
代码:
#include <iostream>
#include <algorithm>
#include <stdio.h>
#include <string.h>
using namespace std;
typedef long long ll;
ll index=0;
ll b[100005];
ll mod,n,sum;
void init() {
for(ll i=1;i<=9;++i) {
b[index]=i*10+i;
index++;
}
for(ll i=1;i<=9;++i) {
for(ll j=0;j<=9;++j) {
b[index]=i*1000+j*100+j*10+i;
index++;
}
}
for(ll i=1;i<=9;++i) {
for(ll j=0;j<=9;++j) {
for(ll k=0;k<=9;++k) {
b[index]=i*100000+j*10000+k*1000+k*100+j*10+i;
index++;
}
}
}
for(ll i=1;i<=9;++i) {
for(ll j=0;j<=9;++j) {
for(ll k=0;k<=9;++k) {
for(ll x=0;x<=9;++x) {
b[index]=i*10000000+j*1000000+k*100000+x*10000+x*1000+k*100+j*10+i;
index++;
}
}
}
}
for(ll i=1;i<=9;++i) {
for(ll j=0;j<=9;++j) {
for(ll k=0;k<=9;++k) {
for(ll x=0;x<=9;++x) {
for(ll y=0;y<=9;++y) {
b[index]=i*1000000000+j*100000000+k*10000000+x*1000000+y*100000+y*10000+x*1000+k*100+j*10+i;
index++;
}
}
}
}
}
b[index]=100000000001;
index++;
sort(b,b+index);
}
int main() {
init();
while(~scanf("%I64d %I64d",&n,&mod)) {
sum=0;
for(int i=0;i<n;++i) sum=(sum%mod+b[i]%mod)%mod;
printf("%I64d\n",sum);
}
return 0;
}
codeforces 897B Chtholly's request 偶数长度回文数的更多相关文章
- Codeforces Round #449 (Div. 2) B. Chtholly's request【偶数位回文数】
B. Chtholly's request time limit per test 2 seconds memory limit per test 256 megabytes input standa ...
- 897B. Chtholly's request#长度为偶数的回文数(模拟)
题目出处:http://codeforces.com/problemset/problem/897/B 题目大意:构造一个题意要求的zcy数之后取模 #include<iostream> ...
- [LeetCode] Prime Palindrome 质数回文数
Find the smallest prime palindrome greater than or equal to N. Recall that a number is prime if it's ...
- 洛谷 U3346 A1-偶回文数
U3346 A1-偶回文数 题目背景 方方方很喜欢回文数,于是zzq就出了一道关于回文数的题目. 因为偶回文数比较简单,所以方方方就把它放在了第一题... 题目描述 我们定义一个长度为偶数的回文数叫做 ...
- CodeForces 688B Lovely Palindromes (水题回文)
题意:给一个数n,让你找出长度为偶数,并且是第 n 个回文数. 析:你多写几个就知道了,其实就是 n,然后再加上n的逆序,不过n有点大,直接用string 好了. 代码如下: #include < ...
- 判断回文字符串、回文链表、回文数(python实现)
所谓回文字符串,就是正读和反读都一样的字符串,比如"level"或者"noon"等等就是回文串.即是对称结构 判断回文字符串 方法一: def is_palin ...
- [2014亚马逊amazon] 在线笔试题 大于非负整数N的第一个回文数 Symmetric Number
1.题目 如标题,求大于整数N(N>=0)的第一个回文数的字符串表示形式. 这个题目也是当时笔试第一次见到,花了一个小时才做出了.慢慢总结还是挺简单的. 2.分析 分析如下: (1)一位数N(9 ...
- tmp_获取下一个回文数
直接拿之前一次竞赛中写的code,稍微完善了点,后面有机会在优化 uint64_t GetNextPalindrome(uint64_t data) { //100以内的数字已经特殊考虑过,不存在差值 ...
- [LeetCode] 906. Super Palindromes 超级回文数
Let's say a positive integer is a superpalindrome if it is a palindrome, and it is also the square o ...
随机推荐
- 压缩感知重构算法之子空间追踪(SP)
SP的提出时间比CoSaMP提出时间稍晚一些,但和压缩采样匹配追踪(CoSaMP)的方法几乎是一样的.SP与CoSaMP主要区别在于“In each iteration, in the SP algo ...
- java语言在某个数组中查找某个字符出现的次数
package com.llh.demo; import java.util.Scanner; /** * * @author llh * */ public class Test { /* * 在某 ...
- poj 1759 Garland
Garland Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 2365 Accepted: 1007 Descripti ...
- Crazy Calendar (阶梯博弈变形)
2011 was a crazy year. Many people all over the world proposed on 11-11-11, married on 11-11-11, som ...
- Linux 进程后台运行的几种方式(screen)
Ctrl+z/bg/nohup/setsid/& 在Linux中,如果要让进程在后台运行,一般情况下,我们在命令后面加上&即可,实际上,这样是将命令放入到一个作业队列中了: ./rsy ...
- 深入分析Android动画(一)
动画的分类: ①View动画 View动画顾名思义其作用对象为View,包含平移.缩放.旋转.透明,这四类变化分别对应着Animation的子类TranlateAnimation.ScaleAnima ...
- 2000W条数据,加入全文检索的总结
一) 前期准备测试: 旧版的MySQL的全文索引只能用在MyISAM表格的char.varchar和text的字段上. 不过新版的MySQL5.6.24上InnoDB引擎也加入了全文索引,所以具体信息 ...
- day3--深入学习命令总结
1.查看命令帮助的几种方法 a.[命令] --help 适用于一般命令,非内置命令 b.man [命令] 适用于一般命令,非内置命令 c.help [命令] 适用于内置命令 d ...
- ML技术 - 特征选择
1. 决策树中的特征选择 分类决策树是一种描述对实例进行分类的树型结构,决策树学习本质上就是从训练数据集中归纳出一组分类规则,而二叉决策树类似于if-else规则.决策树的构建也是非常的简单,首先依据 ...
- openpose模型在AI challenge人体骨骼关键点检测的表现
因为之前正好看了CMU在CVPR2017上的论文<Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields>, ...