记录编号 443912 评测结果 AAAAAAA
题目名称 双重回文数 最终得分 100
用户昵称 GravatarJustWB 是否通过 通过
代码语言 C++ 运行时间 0.009 s
提交时间 2017-09-01 18:51:57 内存使用 0.33 MiB
显示代码纯文本
#include<cstdio>
#include<iostream>
using namespace std;
inline int get();
inline void turn(int now,int k);
inline bool jud(int st,int ed);
int n,s,bit,all;
char temp[10001];
int main()
{
	freopen("dualpal.in","r",stdin);
	freopen("dualpal.out","w",stdout);
	n=get();s=get()+1;
	while(n)
	{
		all=0;
		for(int i=10;i>=2;i--)
		{
			turn(s,i);
			if(jud(1,bit-1))all++;
			if(all==2)
			{
				printf("%d\n",s);
				n--;
				break;
			}
		}
		s++;
	}
	return 0;
}
inline bool jud(int st,int ed)
{
	while(st<=ed)
	{
		if(temp[st]!=temp[ed])return false;
		else st++,ed--;
	}
	return true;
}
inline void turn(int now,int k)
{
	bit=1;
	while(now)
	{
		temp[bit]=now%k+'0';
		now=(now-now%k)/k;
		bit++;
	}
}
inline int get()
{
	int t=0;char j=1,c=getchar();
	while(!isdigit(c))
	{
		if(c=='-')j=-1;
		c=getchar();
	}
	while(isdigit(c))
	{
		t=(t<<3)+(t<<1)+c-'0';
		c=getchar();
	}
	return j*t;
}