博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vijos P1596 加法表【迭代】
阅读量:6911 次
发布时间:2019-06-27

本文共 979 字,大约阅读时间需要 3 分钟。

背景

神奇的加法表~

描述

著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字。

例如:
+ L K V E
L L K V E
K K V E KL
V V E KL KK
E E KL KK KV

其含义为:L+L=L,L+K=K,L+V=V,L+E=E,K+L=K,K+K=V,K+V=E,K+E=KL,……E+E=KV

根据这些规则可推导出:L=0,K=1,V=2,E=3
同时,可以确定该表表示的是4进制加法

格式

输入格式

n(n<=11),表示行数,以下N行,n(n<=11),表示行数,以下N行,每行N个字符串,每个字符串间用空格隔开。(字符串中仅第一行有一个为"+"号,其他都由大写字母组成)

输出格式

第一行为各个字母表示什么数,格式如:L=0 K=1 …… (字符按第一行的输入顺序输出)

第二行为加法运算是几进制的
若不可能组成加法表,则应输出"Wrong!"

样例1

样例输入1

5+ L K V EL L K V EK K V E KLV V E KL KKE E KL KK KV

样例输出1

L=0 K=1 V=2 E=34

限制

1s

提示

有多种神奇方法可以解决~

注意检验!

来源

Noip 1998

问题链接

问题分析:字母表示的加法表验证问题。

程序说明

用暴力法(或DFS)必然TLE。

这里采用迭代法,样例程序可以通过,然而程序提交后WA,哪位帮忙解决一下!

题记:(略)

参考链接:(略)

WA的C++程序如下:

#include 
#include
#include
using namespace std;const int N = 11;string s[N][N];int ans[N];int n, count;bool flag;map
o;int main(){ cin >> n; for(int i=0; i
> s[i][j]; for(int i=1; i

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

你可能感兴趣的文章
Java 8 函数式接口 - Functional Interface
查看>>
Python 正则表达式——re模块介绍
查看>>
linux 系统的运行级别
查看>>
memcached与redis有什么区别
查看>>
【synchronized底层原理之2】悲观锁与乐观锁、线程阻塞的代价等
查看>>
双亲委派的认识
查看>>
Spring Cloud Spring Boot mybatis分布式微服务云架构(一)快速入门
查看>>
iOS雪花动画、音频图、新闻界面框架、2048游戏、二维码条形码扫码生成等源码...
查看>>
深入理解Java自带的线程池和缓冲队列
查看>>
【C++】智能指针简述(三):scoped_ptr
查看>>
Gogs:可能是比Gitlab更好的选择
查看>>
金融壹账通陈敏如:科技助力普惠金融 构建东南亚数字金融生态圈
查看>>
Node.js RESTful API
查看>>
Linux快速入门(一)
查看>>
IT兄弟连 JavaWeb教程 ElasticSearch在Linux下的安装和启动、常见问题解决
查看>>
spring cloud+docker+jenkins 自动化构建(2)
查看>>
iOS核心动画笔记3-视觉效果
查看>>
Ubuntu17 Jdk8 Tomcat64位环境搭建
查看>>
程序员也可以设计高大尚的xmind思维导图
查看>>
#生活琐事# 关于元宵节,红茶童鞋的记事
查看>>