`

uva 129 困难串

    博客分类:
  • acm
c++ 
阅读更多
因为在递归的过程中,总是选择最小的i,所以最先求到的解肯定是字典序最小的,我觉得这也是这道题用这个算法的原因,因为我觉得这个算法对减时没有什么卵用


#include <stdio.h>
#include <stack>
#include <string.h>
using namespace std;
int L,n,cnt;
int s[1010];
int dfs(int cur)
{
    if(cnt++==n)
    {
        for(int i=0;i<cur;i++)
            printf("%c",'A'+s[i]);
        printf("\n");
        return 0;
    }
    for(int i=0;i<L;i++)
    {
        s[cur] = i;
        int ok = 1;
        for(int j=1;j*2<=cur+1;j++)
        {
            int equal = 1;
            for(int k=0;k<j;k++)
            {
                if(s[cur-k]!=s[cur-k-j])
                {
                    equal = 0;
                    break;
                }
            }
            if(equal) {ok=0;break;}
        }
        if(ok) if(!dfs(cur+1)) return 0;
    }
    return 1;
}
int main()
{
    while(scanf("%d %d",&n,&L)!=EOF)
    {
       memset(s,0,sizeof(s));
       cnt = 0;
       dfs(1);
    }
    return 0;
}
分享到:
评论

相关推荐

    uva272 uva272 uva272

    标题中的"uva272 uva272 uva272"和描述中的"uva272"指的是UVA(University of Virginia)在线判题系统的第272题,这通常与编程竞赛和算法挑战有关。该题目的标签为"算法",意味着我们需要解决一个与计算机算法设计和...

    UVA_示例代码

    3. **字符串处理**:字符串操作是许多UVA题目中的常见任务,如模式匹配、字符串比较、子串查找等。了解字符串处理技巧和库函数(如C++的`&lt;string&gt;`或C的`str*`系列函数)对解决问题至关重要。 4. **文件输入/输出**...

    uvaoj 习题题目

    3. **字符串处理**:UVa中的题目经常需要处理字符串,涉及到模式匹配(KMP、Boyer-Moore算法)、字符串查找与替换、最长公共子序列、后缀数组、AC自动机等技术。 4. **数学应用**:许多题目需要利用数学知识,如数...

    UVaOJ-401(Palindromes).zip_401 Palindromes

    标题中的"UVaOJ-401(Palindromes)"表明这是一个关于解决UVa Online Judge(UVa OJ)上编号为401的编程挑战,该挑战的主题是"Palindromes",即回文串。回文串是指一个字符串无论从前读到后还是从后读到前都是相同的,...

    uva最全ac代码

    【描述】"uva最全ac代码"表明这是一个综合性的资源集合,可能包括了不同难度级别的问题,覆盖了数据结构、图论、动态规划、排序算法、搜索算法、字符串处理、数值计算等多个方面的算法。这些代码可以作为学习和参考...

    Uva练习题

    【UVA练习题】是针对在线编程竞赛平台UVA(University of Virginia)的一系列练习题目。UVA是一个广受欢迎的编程竞赛网站,它为程序员提供了一个展示编程技能和解决问题的平台。这里的“不是很难,试试吧”可能意味...

    uva 200~299 22道题解 均accept

    2. **uva202.cpp** - 同样,这可能对应UVA的第202号问题,可能涉及字符串处理、模式匹配或者数学问题。 3. **uva208.cpp** - 可能是第208号题目的解法,可能是关于图论、动态规划或者递归的问题。 4. **uva216.cpp...

    UVA题目大全

    【UVA题目大全】是面向ACM(国际大学生程序设计竞赛)参赛者和算法爱好者的一份宝贵资源。UVA(University of Victoria Algorithm)在线判题系统是世界上最早的在线编程竞赛平台之一,它提供了大量的编程题目供用户...

    uva 50个题解

    2. **基础技能**:"Elementary Skills"可能包含基础的编程技巧和算法,如排序(冒泡、选择、插入、快速、归并排序)、查找(顺序、二分、哈希)、字符串处理、递归等。 3. **回溯法**:这是一种试探性的解决问题的...

    UVa Online Judge部分题目代码

    3. **字符串处理**:UVa中有很多与字符串相关的题目,涉及到字符串匹配(KMP、Boyer-Moore算法)、文本操作(如子串查找、反转、模式匹配等)以及字符串压缩和编码。 4. **数学知识**:许多题目需要运用数学知识,...

    uva 部分题目解决代码

    首先,UVA题目涵盖了多个难度等级,从基础的逻辑思维到复杂的算法设计,包括排序、搜索、图论、动态规划、字符串处理等各类主题。通过分析这些解题代码,我们可以深入理解每种算法的实际应用和优缺点。 例如,`test...

    uva.rar_UVA_posAgent_uva 2d_uva_trilearn

    "uva.rar_UVA_posAgent_uva 2d_uva_trilearn"这个标题可能是指一个与UVA平台相关的项目或资源包,其中包含了几个特定的组件。 "posAgent"可能指的是一个定位或位置代理,这在计算机科学中通常与移动机器人、游戏或...

    凸包 UVA109 题解

    根据给定的信息,本文将对UVA109题目的解决方案进行详细解析,重点在于理解题目背景、所需算法原理及具体实现步骤。 ### 题目背景与要求 UVA109是一道关于计算几何的经典题目,主要考察学生对于**凸包**(Convex ...

    AIML.zip_UVA_UVA 499

    UVA 499是一具体的编程挑战,尽管题目具体细节未在描述中给出,但通常UVA的题目涵盖各种算法和数据结构,可能涉及搜索、排序、图论、动态规划、字符串处理等主题。解决这些题目有助于提升编程思维、优化代码和解决...

    uva OJ 题目分类

    世界著名大学UVA OJ平台上的题目部分分类,分的不好请原谅。

    uva_base_hfut_v13.2.tar.gz

    1.Uva_base的编译 在编译球队时,则需要在当前球队文件夹下打开终端输入执行以下命令(以下命令都是在root下执行的): ./configure make clean make 如果运行Uva_base后,出现球员越界或掉线的情况,就重新...

    uva531 LCS算法

    uva531最长公共子序列问题水题,应用简单的dp即可ac有更快速的方法欢迎讨论

    Uva 1510 - Neon Sign

    ### Uva 1510 - Neon Sign #### 问题背景与描述 在题目“Uva 1510 - Neon Sign”中,我们面对的是一个霓虹灯招牌设计问题。该霓虹灯招牌由一系列位于圆周上的角点组成,并通过发光管连接这些角点。发光管有两种...

    算法入门经典UVa配套题目pdf

    UVa(University of Victoria)在线判题系统是这本书的重要配套资源,提供了大量的实际题目供读者练习。这份"算法入门经典UVa配套题目pdf"包含了书中的所有相关题目,是学习算法和准备编程竞赛的理想参考资料。 1. ...

    uva10755 ac

    uva10755 ac 代码,可以随意更改下载

Global site tag (gtag.js) - Google Analytics