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年1月20日
    73
  • 常量字符串过长的解决办法_jdbc编译异常

    常量字符串过长的解决办法_jdbc编译异常如果使用String str = “这是一个很长很长很长 你需要的字符串。”; 出现异常不能正常编译运行时,可以使用下方:StringBuilder sb = new StringBuilder();sb.append(“这是一个很长很长”);sb.append(“很长 你需要的字符串”);字符串太长或字符串其他情况下可使用 : StringBuilder sb = new StringBuilder()…

    2022年8月20日
    11
  • XSS漏洞介绍及反射型XSS

    XSS漏洞介绍及反射型XSS什么是XSS攻击:XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。比如这些代码包括HTML代码和客户端脚本。攻击者利用XSS漏洞旁路掉访问控制–例如同源策略(sameoriginpolicy)。这种类型的漏洞由于被黑客用来编写危害性更大的网络钓鱼(Phishing)攻击而变得广为人知。XSS分类:类型A,本地利用漏洞,这种漏…

    2022年5月6日
    42
  • tomcat java_tomcat和maven的区别

    tomcat java_tomcat和maven的区别缓存什么是缓存[Cache]存在内存中的临时数据将用户经常查询的数据放在缓存(内存)中,用户去查询数据的时候就不用从磁盘上(关系型数据库数据文件)查询,从缓存中查询,从而提高查询效率,解决了高并发系统的性能问题。为什么使用缓存减少和数据库的数据交换次数,较少系统开销,提高系统效率什么样的数据库能使用缓存经常查询并且不经常改变的数据Mybatis缓存MyBatis 内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制。默认情况下,只启用了本地的会话缓存,它仅

    2022年8月8日
    6
  • Linux04:(4.6k)vim编辑器「建议收藏」

    Linux04:(4.6k)vim编辑器「建议收藏」文章目录Linux_day04一.vim编辑器vim的三种模式1.命令模式2.末行模式3.编辑模式实用功能扩展内容==1.vim的配置文件==2.异常退出问题3.别名机制4.退出方式补充一些win10下的快捷键Linux_day04一.vim编辑器vim的三种模式命令模式不能对文件直接编辑,但可以通过快捷键删除行,复制,粘贴,移动光标等编辑模式-输入末行模式可以在末行输入命令:搜索,替换,保存,退出,撤销vim打开文件的方式:1.#vim 文件路径——直接打开文件(光

    2022年8月9日
    6
  • 计算ip地址的有效范围是_ip地址如何计算

    计算ip地址的有效范围是_ip地址如何计算例如:ip:192.168.9.3子网掩码:255.255.254.0网关:192.168.9.11:IP地址=网络地址+主机地址,二进制为:110000001010100000001001000000112:子网掩码的二进制表示为:11111111111111111111111000000000解析:前面1的就是网络地址部分,后面0就是主机地址,所以此处有9位主机地址。3:网络地址=子网掩码&IP地址,即:192.168.8.04:广播地址=3中

    2022年10月20日
    3

发表回复

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

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