/*
ID: fykalv3
LANG: C
TASK: dualpal
*/
/*
遍历2到10逐个转换然后判断是不是回文数,就有个mark的变量记录是不是大于两种情况下的回文数
*/
#include <stdio.h>
/*
函数的功能就是转换然后再判断是不是回文数
*/
int pd(int num)
{
int i, j, m, k, p, q, flag;
int les[100];
k = 0;
for (i = 2; i <= 10; i++) {
flag = 1;
j = 0;
m = num;
while (m) {
les[j++] = m % i;
m /= i;
}
for (p = 0, q = j-1; p <= q && flag; p++, q--) {
if (les[p] != les[q])
flag = 0;
}
if (flag) // 这里是mark的作用
k++;
}
if (k >= 2) // 这里看出来mark的作用了
return 1;
else
return 0;
}
int main()
{
FILE *fin = fopen("dualpal.in", "r");
FILE *fout = fopen("dualpal.out", "w");
int N, S, l, sum = 0;
fscanf(fin, "%d %d", &N, &S);
for (l = S + 1; sum < N; l++) {
if (pd(l)) {
fprintf(fout, "%d\n", l);
sum++;
}
}
fclose(fin);
fclose(fout);
return 0;
}
分享到:
相关推荐
Dual Palindromes(dualpal)这道题目尤为有趣,它考察参赛者对回文数的理解、多进制表示的掌握以及C语言文件输入输出的处理能力,还考验算法设计的创新和效率。 首先,让我们来探讨回文数的概念。所谓回文数,就是...
python-4.双重回文数 Dual Palindromes——两种进制哦.py
9 [1.2] 双重回文数 Dual Palindromes 10 [1.3] 混合牛奶 Mixing Milk 11 [1.3] 修理牛棚 Barn Repair 12 [1.3] 牛式 Prime Cryptarithm 13 [1.3] 虫洞 wormhole 14 [1.3] 滑雪课程设计Ski Course Design
接着,1.2节重点是完整搜索,如"Milking Cows"中运用离散化技术,"Transformations"和"Name That Number"通过枚举解决,而"Palindromic Squares"和"Dual Palindromes"进一步强化了枚举法的应用。 1.3节围绕贪心算法...
1.2.4 "Palindromic Squares" 和 "Dual Palindromes" 强调了对回文数的理解和生成算法。 1.3.1 "Mixing Milk" 和 "Barn Repair" 可能涉及到更复杂的数学模型和动态规划。 1.4.1 "Packing Rectangles" 可能需要理解二...
8. **1.2.5 Dual Palindromes**:双回文问题可能需要检查字符串是否既是正读也是反读的回文,涉及到字符串处理和回文判断算法。 9. **4.1.2 Fence Rails**:这可能是一个关于排列组合的问题,需要计算在特定条件下...
#### Dual Palindromes 这个问题进一步扩展了回文的概念,要求找出同时在两种进制下都是回文数的整数。解决此类问题时,可以采用类似的方法,但需要额外考虑不同进制下的转换。 #### Mixing Milk 这是一道关于...
**1.2.5 Dual Palindromes** - **问题描述**:题目要求寻找同时是两个不同进制下的回文数。 - **算法思想**:可以采用枚举法,结合快速幂运算进行进制转换和回文检查。 ##### 第二部分:进阶级题目解析 **2.1.1 ...