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;
}

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 物联网开发_物联网是不是一种骗局

    物联网开发_物联网是不是一种骗局物联网期末大作业—睡眠质量检测系统

    2022年10月9日
    0
  • android apk 签名(平台和普通签名)

    android apk 签名(平台和普通签名)因为做了太多的终端项目,客户总会有自己的apk提供,这时候各种签名问题就来了,最近整理了一下相关知识,分享给大家。签名的用处:1.应用程序升级:如果你希望用户无缝升级到新的版本,那么你必须用同一个证书进行签名。这是由于只有以同一个证书签名,系统才会允许安装升级的应用程序。如果你采用了不同的证书,那么系统会要求你的应用程序采用不同的包名称,在这种情况下相当于安装了一个全新的应用程…

    2022年6月6日
    74
  • JAVA连接Redis客户端多种方式实现

    JAVA连接Redis客户端多种方式实现Jedis介绍Redis不仅使用命令来操作,而且可以使用程序客户端操作。现在基本上主流的语言都有客户端支持,比如java、C、C#、C++、php、Node.js、Go等。在官方网站里列一些Java的客户端,有Jedis、Redisson、Jredis、JDBC-Redis、等其中官方推荐使用Jedis和Redisson。Jedis同样也是托管在github上,地址:https://github.com/xetorthio/jedis<dependencies>..

    2022年6月9日
    33
  • Windows DIB文件操作具体解释-4.使用DIB Section

    Windows DIB文件操作具体解释-4.使用DIB Section

    2022年2月7日
    39
  • 虚拟主机和云服务器有什么区别,我们应该如何选择?[通俗易懂]

    虚拟主机和云服务器有什么区别,我们应该如何选择?[通俗易懂]虚拟主机已经有了一段时间的历史,近几年随着其技术的不断成熟,以及其低廉的价格,成为众多站长的首选对象。但近两年云计算的出现,衍生出云服务器这个产物。这时,很多站长便对虚拟主机与云服务器应该如何选择感到困扰,不知是选择技术比较成熟的虚拟主机,还是选择最新的云服务器。虚拟主机与云服务器的区别:虚拟主机是利用虚拟技术将一台物理服务器划分成多个“虚拟”服务器,虚拟主机的出现大大节省了服务器硬件的成本,…

    2022年6月25日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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