当前位置: 首页 > news >正文

UVA1339 UVALive3213 POJ2159 ZOJ2658 Ancient Cipher【密码】

Regionals 2004 >> Europe - Northeastern


问题链接:UVA1339 UVALive3213 POJ2159 ZOJ2658 Ancient Cipher。基础训练题,用C语言编写程序。

问题分析:对两组字符串分别进行字母统计,接着对统计结果进行排序,然后对排序后的结果进行比较。如果相同,说明可以找到一种一一映射,使得两个字符串相同。

程序说明:比较两组非字符值是否相等,还可以使用函数memcmp()来实现,参考相关链接。


AC的C语言程序如下:

/* UVA1339 UVALive3213 POJ2159 ZOJ2658 Ancient Cipher */

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <memory.h>

#define LETTERNUM 26
#define MAXN     100

int cmp(const void * a, const void * b)
{
    return *(int *)a - *(int *)b;
}

int main(void)
{
    char s[MAXN+1], t[MAXN+1];
    int counts[LETTERNUM], countt[LETTERNUM], len, flag, i;

    while(scanf("%s", s) != EOF) {
        scanf("%s", t);

        memset(counts, 0, sizeof(counts));
        memset(countt, 0, sizeof(countt));

        len = strlen(s);
        for(i=0; i<len; i++) {
            counts[s[i]-'A']++;
            countt[t[i]-'A']++;
        }

        qsort(counts, LETTERNUM, sizeof(counts[0]), cmp);
        qsort(countt, LETTERNUM, sizeof(countt[0]), cmp);

        flag = 1;
        for(i=0; i<LETTERNUM; i++)
            if(counts[i] != countt[i]) {
                flag = 0;
                break;
            }

        printf("%s\n", flag ? "YES" : "NO");
    }

    return 0;
}


相关链接:Ancient Cipher。


转载于:https://www.cnblogs.com/tigerisland/p/7564505.html

相关文章:

  • UVALive 4660 A+B
  • 切割Nginx日志的脚本
  • pg 学习资料
  • Ntp配置文件详解
  • httpd 启动报错“”Permission denied: make_sock: could not bind to address [::]:80“”
  • 定制yum仓库
  • WMIC Query SCSI Info
  • 基于Microchip单片机的触摸感应技术
  • 11g 新特性IGNORE_ROW_ON_DUPKEY_INDEX提示
  • sed-awk-正则表达式
  • CSS 漂亮搜索框美化代码
  • UVA136 Ugly Numbers
  • nginx反向代理目录及动静分离
  • 一个C#语言编写Windows服务的例子:强制杀死高内存占用的进程
  • 实用的dhcp及dhcp中继服务案例实现
  • 《用数据讲故事》作者Cole N. Knaflic:消除一切无效的图表
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  •  D - 粉碎叛乱F - 其他起义
  • iOS 颜色设置看我就够了
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • ⭐ Unity 开发bug —— 打包后shader失效或者bug (我这里用Shader做两张图片的合并发现了问题)
  • vue-router 实现分析
  • 测试开发系类之接口自动化测试
  • 代理模式
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 深入 Nginx 之配置篇
  • 手写一个CommonJS打包工具(一)
  • 数组大概知多少
  • 算法---两个栈实现一个队列
  • linux 淘宝开源监控工具tsar
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • #绘制圆心_R语言——绘制一个诚意满满的圆 祝你2021圆圆满满
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (3)选择元素——(14)接触DOM元素(Accessing DOM elements)
  • (C#)if (this == null)?你在逗我,this 怎么可能为 null!用 IL 编译和反编译看穿一切
  • (libusb) usb口自动刷新
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (八)Spring源码解析:Spring MVC
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (附源码)计算机毕业设计SSM智慧停车系统
  • (每日持续更新)jdk api之StringBufferInputStream基础、应用、实战
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (一) springboot详细介绍
  • (一)Spring Cloud 直击微服务作用、架构应用、hystrix降级
  • (原创)攻击方式学习之(4) - 拒绝服务(DOS/DDOS/DRDOS)
  • (转)ABI是什么
  • .bashrc在哪里,alias妙用
  • .NET 8.0 发布到 IIS
  • .NET 8.0 中有哪些新的变化?
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .NET Core中的去虚
  • .Net mvc总结
  • .net 简单实现MD5
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)