ACM的准备之路(蓝桥杯2)

本文介绍了一种用于检测特殊类型的五位和六位回文数的算法,并通过C++实现该算法。程序首先定义了一个名为re的函数,用于判断输入整数是否为特殊回文数;接着,在主函数中,程序接收用户输入的目标数字和,然后遍历所有可能的五位和六位数,找出符合条件的特殊回文数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

特殊回文数

int re(int n) {
 if (n % 100000 == n)
 {
  if (n / 10000 == n % 10 && (n % 10000) / 1000 == (n % 100) / 10)
   return 1;
  else
   return 0;
 }
 else
 {
  if (n / 100000 == n % 10 && (n % 100000) / 10000 == (n % 100) / 10 && (n % 10000) / 1000 == (n % 1000) / 100)
   return 1;
  else
   return 0;
 }
}
int main() {
 int n = 0;
 cin >> n;
 for (int i = 10000; i <= 99999; i++)
  if (re(i) && (i / 10000 + i % 10 + (i % 10000) / 1000 + (i % 100) / 10 + (i % 1000) / 100) == n)
   cout << i << endl;
 for (int i = 100000; i <= 999999; i++)
  if (re(i) && (i / 100000 + (i % 100000) / 10000 + i % 10 + (i % 10000) / 1000 + (i % 100) / 10 + (i % 1000) / 100) == n)
   cout << i << endl;
 system("pause");
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值