uva 644

uva 644第一次交用的冒泡排序,Re了,改成快排OK#include#include#include#includeusingnamespacestd;chartemp[100][10];intcmp(constvoid*_a,constvoid*_b){char*a=(char*)_a;char*b=(char*)_b

大家好,又见面了,我是你们的朋友全栈君。

第一次交用的冒泡排序,Re了, 改成快排OK
#include <stdio.h>
#include <string.h>
#include <iostream>
#include <cstdlib>
using namespace std;
char temp[100][10];
int cmp( const void *_a, const void * _b )
{
     char * a = (char*)_a;
     char * b = (char*)_b;
     if( strlen(a) > strlen(b) )
         return 1;
     else if( strlen(a) < strlen(b) )
         return  -1;
     else
         return 0;
};
bool cmp( int i, int j )
{
    int len, k;
    len = strlen( temp[i] );
    for( k = 0; k < len; k++ )
    {
      if( temp[i][k] != temp[j][k] )
          return false;
    }
    return true;
};

int main()
{  

    int n, i, j, k, time = 0, a = 0;
    bool flag;
    char input[10];
    while( scanf( "%s", input ) != EOF )
    {
           flag = false;
           if( input[0] == '9' )
           {
               n = a;
               qsort( temp, n, sizeof(temp[0]), cmp );
               for( i = 0; i < n && !flag; i++ )
                    for( j = i+1; j < n && !flag; j++ )
                         flag = cmp( i, j );                       
               if( flag )
               {
                   cout << "Set " << time+1 << " is not immediately decodable" << endl;   
               }
               else
                   cout << "Set " << time+1 << " is immediately decodable" << endl;
               
               a = 0;
               time++;
           }
           else
               strcpy(temp[a++], input );
    }
    return 0;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/148911.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 一文详解读写锁_C++ 读写锁

    一文详解读写锁_C++ 读写锁作者|磊哥来源|Java面试真题解析(ID:aimianshi666)转载请联系授权(微信ID:GG_Stone)读写锁(Readers-WriterLock)顾名思义是一把锁分为两部分:读锁和写锁,其中读锁允许多个线程同时获得,因为读操作本身是线程安全的,而写锁则是互斥锁,不允许多个线程同时获得写锁,并且写操作和读操作也是互斥的。总结来说,读写锁的特点是:读读…

  • 【C语言】让你不再害怕指针——C指针详解(经典,非常详细)

    因排版过于粗糙学习详情转至:https://blog.csdn.net/qq_41035588/article/details/97010039前言:复杂类型说明要了解指针,多多少少会出现一些比较复杂的类型,所以我先介绍一下如何完全理解一个复杂类型,要理解复杂类型其实很简单,一个类型里会出现很多运算符,他们也像普通的表达式一样,有优先级,其优先级和运算优先级一样,所以我总…

  • Android四大组件–MediaPlayer详解(转)

    Android四大组件–MediaPlayer详解(转)

  • ider激活码(JetBrains全家桶)

    (ider激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

  • Python中的numpy库介绍!

    Python中的numpy库介绍!机器学习算法中大部分都是调用Numpy库来完成基础数值计算的。安装方法:pip3installnumpy1.ndarray数组基础python中用列表保存一组值,可将列表当数组使用。另外,python中有array模块,但它不支持多维数组,无论是时列表还是array模块都没有科学运算函数,不适合做矩阵等科学计算。numpy没有使用python本身的数组机制,而是提供了ndarray…

  • 如何下载mysql驱动jar包

    如何下载mysql驱动jar包mysql的驱动jar包下载教程

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号