CCF201509-3 模板生成系统 JAVA

从业人员体检健康证管理制作 20071230-ASP源码.zip ASP源码,压缩包解压密码:www.cqlsoft.com 立即下载

试题编号: 201509-3
试题名称: 模板生成系统
时间限制: 1.0s
内存限制: 256.0MB
问题描述:
问题描述
  成成最近在搭建一个网站,其中一些页面的部分内容来自数据库中不同的数据记录,但是页面的基本结构是相同的。例如,对于展示用户信息的页面,当用户为 Tom 时,网页的源代码是


  而当用户为 Jerry 时,网页的源代码是


  这样的例子在包含动态内容的网站中还有很多。为了简化生成网页的工作,成成觉得他需要引入一套模板生成系统。
  模板是包含特殊标记的文本。成成用到的模板只包含一种特殊标记,格式为 {{ VAR }},其中 VAR 是一个变量。该标记在模板生成时会被变量 VAR 的值所替代。例如,如果变量 name = "Tom",则 {{ name }} 会生成 Tom。具体的规则如下:
  ·变量名由大小写字母、数字和下划线 (_) 构成,且第一个字符不是数字,长度不超过 16 个字符。
  ·变量名是大小写敏感的,Name 和 name 是两个不同的变量。
  ·变量的值是字符串。
  ·如果标记中的变量没有定义,则生成空串,相当于把标记从模板中删除。
  ·模板不递归生成。也就是说,如果变量的值中包含形如 {{ VAR }} 的内容,不再做进一步的替换。
输入格式
  输入的第一行包含两个整数 m, n,分别表示模板的行数和模板生成时给出的变量个数。
  接下来 m 行,每行是一个字符串,表示模板。
  接下来 n 行,每行表示一个变量和它的值,中间用一个空格分隔。值是字符串,用双引号 (") 括起来,内容可包含除双引号以外的任意可打印 ASCII 字符(ASCII 码范围 32, 33, 35-126)。
输出格式
  输出包含若干行,表示模板生成的结果。
样例输入
11 2
<!DOCTYPE html>
<html>
<head>
<title>User {{ name }}</title>
</head>
<body>
<h1>{{ name }}</h1>
<p>Email: <a href="mailto:{{ email }}">{{ email }}</a></p>
<p>Address: {{ address }}</p>
</body>
</html>
name "David Beckham"
email "david@beckham.com"
样例输出
<!DOCTYPE html>
<html>
<head>
<title>User David Beckham</title>
</head>
<body>
<h1>David Beckham</h1>
<p>Email: <a href="mailto:david@beckham.com">david@beckham.com</a></p>
<p>Address: </p>
</body>
</html>
评测用例规模与约定
  0 ≤ m ≤ 100
  0 ≤ n ≤ 100
  输入的模板每行长度不超过 80 个字符(不包含换行符)。
  输入保证模板中所有以 {{ 开始的子串都是合法的标记,开始是两个左大括号和一个空格,然后是变量名,结尾是一个空格和两个右大括号。
  输入中所有变量的值字符串长度不超过 100 个字符(不包括双引号)。
  保证输入的所有变量的名字各不相同。
                              

 

             使用正则表达式可以让此题非常简单,在90分卡了很长时间,最后注意到这句话

:模板不递归生成。也就是说,如果变量的值中包含形如 {{ VAR }} 的内容,不再做进一步的替换。


所以需要做二次替换,也就是说,如果需要替换的变量值中仍然存在{{ VAR }}格式,则先将其替

换为中间值,为了避免中间值在输入中已出现,我这里用了变量名加我的名字全拼,最后在这行替换

完成后,将储存的中间值替换掉,提交后100分。具体看代码

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		int n = input.nextInt(), m = Integer.parseInt(input.nextLine().trim());
		String[] template = new String[n];
		for (int i = 0; i < n; i++) {
			template[i] = input.nextLine();
		}
		Map<String, String> values = new HashMap<String, String>();
		for (int i = 0; i < m; i++) {
			String key = input.next();
			String value = input.nextLine().trim();
			value = value.substring(1, value.length() - 1);
			values.put(key, value);
		}
		input.close();
		Map<String, String> second = new HashMap<String, String>();
		for (int i = 0; i < n; i++) {
			String str = template[i];
			Iterator<Entry<String, String>> it = values.entrySet().iterator();
			while (it.hasNext()) {
				Entry<String, String> e = it.next();
				if (e.getValue().matches(".*\\{{2}\\s.+\\s\\}{2}.*")) {
					String secondKey = "chenfan" + e.getKey();
					str = str.replace("{{ " + e.getKey() + " }}", secondKey);
					second.put(secondKey, e.getValue());
				} else {
					str = str.replace("{{ " + e.getKey() + " }}", e.getValue());
				}
			}
			str = str.replaceAll("\\{{2}\\s.+\\s\\}{2}", "");
			Iterator<Entry<String, String>> it2 = second.entrySet().iterator();
			while (it2.hasNext()) {
				Entry<String, String> e2 = it2.next();
				str = str.replace(e2.getKey(), e2.getValue());
			}
			System.out.println(str);
		}
	}
}

健康证管理软件 宏达健康证管理系统 v1.0 健康证管理系统是一款针对卫生防疫部门的的健康证套打软件。系统包含:基础设置:设置工种、设置地区、设置异常项目、设置禁忌项目、单位登记健康证信息:健康证登记查询统计 立即下载

相关推荐

零基础制作电子健康证[可运行源码]

本文介绍了如何从零开始制作一个电子健康证生成网页应用。文章详细讲解了项目功能设计,包括三步操作流程(上传资料、预览效果、下载证书)、预设常见体检数据模板、实时表单验证和响应式设计。技术选型方面,使用HTML5搭建页面结构和表单,CSS3美化界面和实现响应式布局,JavaScript处理表单逻辑和证书生成。具体实现步骤包括搭建基础页面结构、添加表单元素、实现表单验证功能、设计健康证模板和实现响应式布局。文章还提供了常见问题解决方案和项目优化建议,如添加更多体检项目模板、实现多语言支持和增加二维码验证功能。最后,作者分享了在InsCode(快马)平台上的使用体验,推荐新手尝试这个平台进行开发。

Java - 生成健康证图片,各种模板图片

java动态生成图片。生成模板图片

dongyan3595的博客 7万+

手把手教你用GEM-2多频电磁仪找地下管道(附真实数据图)

本文详细解析了使用GEM-2多频电磁仪精准定位地下管线的全流程,包括设备调试、频率选择、现场扫描技巧及数据解读。通过真实案例展示了如何应对复杂干扰环境,提升管线检测效率与准确性,特别适合市政工程和地下管线普查。

weixin_42565652的博客 396

用快马AI平台5分钟开发合规健康证生成器:从需求到上线

上,从零开始到可访问的线上应用,我只用了不到1小时(包括三次需求调整)。建议有类似需求的朋友都试试,尤其是不想折腾环境配置的时候,真的能省下至少80%的重复工作量。通过平台提供的AI对话功能,直接描述需求:「需要React表单页面,包含姓名、身份证、体检结果等字段,提交按钮和实时预览区域」。的AI辅助功能,居然半小时就完成了从构思到部署的全流程。记录下这个超高效的开发过程,特别适合需要快速验证想法的小伙伴。向AI描述需求:「Node.js接口接收表单数据,生成带水印的PDF,返回下载链接」。

SilvermistRaven28的博客 5464

Oracle EBS财务模块(三)总账功能

(一)总账管理系统主要功能  总账管理系统(Oraclegeneralledger)是一个公司一切账务系统的核心,它好比是公司会计信息的中央处理器。总账管理系统提供了一个完整的财务管理核算及分析流程。它是所有子账户的信息存储器,因此反映了所有子账户的财务和现金活动。总账管理系统的主要作用是记录公司的财务活动,并生成财务报表和管理报表,以帮助公司内外人士进行决策。一个公司或组织的制造系统、项目管理系

苏南生的优快云博客 2万+

c语言串口编程详解

串口: 一种异步通信接口,通常用于低速数据传输。RS-232: 最常见的串口标准,定义了电气特性、连接器和信号线。UART: 通用异步收发传输器,是实现串口通信的硬件模块。通过以上内容,你应能够理解并实现C语言在Windows和Linux平台上的串口编程。希望这本手册能帮助你在实际项目中顺利进行串口通信开发。如果有任何疑问或需要进一步的帮助,请随时提问。

jkzyx123的博客 2223

CCF CSP 201509-3 模板生成系统 java实现

问题描述   成成最近在搭建一个网站,其中一些页面的部分内容来自数据库中不同的数据记录,但是页面的基本结构是相同的。例如,对于展示用户信息的页面,当用户为 Tom 时,网页的源代码是   而当用户为 Jerry 时,网页的源代码是   这样的例子在包含动态内容的网站中还有很多。为了简化生成网页的工作,成成觉得他需要引入一套模板生成系统。   模板是包含特殊标记的文本。成

qihuazhuozhuo的博客 798

基于VUE的智慧园区可视化平台(开题报告+源码)

本系统(程序源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景: 随着城市化进程的加速,园区作为城市发展的重要组成部分,其管理和运营效率直接影响到城市的经济发展和居民生活质量。传统的园区管理方式已经难以满足现代城市对于高效率、智能化的需求。因此,利用先进的信息技术构建一个智慧园区可视化平台显得尤为重要。Vue.js作为一个高效的前端框架,能够帮助开发一个动态的、用户友好的智慧园区可视化平台,实现园区管理的数字化和智能化。

liu10611的博客 1179

ccf模板生成系统java_CCF考试——201509-3模板生成系统

概要问题描述成成最近在搭建一个网站,其中一些页面的部分内容来自数据库中不同的数据记录,但是页面的基本结构是相同的。例如,对于展示用户信息的页面,当用户为 Tom 时,网页的源代码是而当用户为 Jerry 时,网页的源代码是这样的例子在包含动态内容的网站中还有很多。为了简化生成网页的工作,成成觉得他需要引入一套模板生成系统。模板是包含特殊标记的文本。成成用到的模板只包含一种特殊标记,格式为 {{ V...

weixin_35854529的博客 211

Matlab实战:如何用MMG方程预测船舶轨迹(附完整代码)

本文提供了一份基于MMG方程的Matlab实战指南,详细讲解了如何从零构建船舶轨迹预测模型。内容涵盖MMG模型的核心原理、Matlab代码框架设计、动力学函数实现、参数调优与验证方法,并附有完整代码示例,帮助工程师和研究者快速掌握这一船舶操纵性预测的关键技术。

v6b7n8m9q0的博客 518

论文理解【LLM-Agent】——【SkillOpt】Executive Strategy for Self-Evolving Agent Skills

SkillOpt 将 agent skill 从人工或一次性 prompt artifact 转化为可验证、可控、可迁移的文本空间“可训练状态”,通过有界编辑、验证门控、拒绝编辑反馈和 slow/meta update,在不更新模型权重的情况下显著提升多类 agent 任务表现

佚失的诗篇 579

JAVA CCF-201509-3 模板生成系统 80分90分的看过来

欢迎访问我的CCF认证解题目录 题目描述 思路过程 这题提交了3次,第一次80分,第二次90分,第三次100分 第一次 这题目最开始想的是:使用string的replaceAll直接替换不就好了?定义一个类或map存储变量和值,然后每行都去遍历一遍规则,如果存在对应的变量名,则替换,最后如果还存在其他的{{ xx }},直接替换为"",输出 import jav...

不断奔跑 470

APB Timer验证环境搭建——学习笔记(1)

以下为个人学习笔记,如有疏漏,请大家指正补充~~APB Timer是一个简单的下行计数器,包括一个32位计数器和一组比较器,可以实现多种计时功能。包括生成一次性中断或者定时中断。

qq_41651535的博客 1578

ccf_201509-3_模板生成系统(java&c++)

试题编号: 201509-3 试题名称: 模板生成系统 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述   成成最近在搭建一个网站,其中一些页面的部分内容来自数据库中不同的数据记录,但是页面的基本结构是相同的。例如,对于展示用户信息的页面,当用户为 Tom 时,网页的源代码是   而当用户为 Jerry 时...

aoe_xiu的博客 478

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

CCF 201509-3 模板生成系统

CCF 201509-3 模板生成系统

judadeshu的博客 707

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

CCF201509-3 模板生成系统 (100分)

试题编号: 201509-3 试题名称: 模板生成系统 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述   成成最近在搭建一个网站,其中一些页面的部分内容来自数据库中不同的数据记录,但是页面的基本结构是相同的。例如,对于展示用户信息的页面,当用户为 Tom 时,网页的源代码是   而当用户为 Jerry 时...

逐梦者 1146

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

CCF201509-3模板生成系统

问题描述 试题编号: 201509-3 试题名称: 模板生成系统 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述   成成最近在搭建一个网站,其中一些页面的部分内容来自数据库中不同的数据记录,但是页面的基本结构是相同的。例如,对于展示用户信息的页面,当用户为 Tom 时,网页的源代码是   而当用户为 J...

Q_M_X_D_D_的博客 467

CCF201509-3 模板生成系统

package cspTest; import java.util.Scanner; public class CspTest2 { //StringBuilder 单线程,线程不安全,查找替换快,是一个动态的对象 //String 是不可替换的字符对象,用于少量的数据操作,比较简单 //StringBuffer 多线程,线程安全,是一个动态的对象 public static void main(String[] args) { Scanner scanner=new Scanner(System.in

weixin_45872600的博客 173

ccf 201509-3 模板生成系统(100分)

问题描述   成成最近在搭建一个网站,其中一些页面的部分内容来自数据库中不同的数据记录,但是页面的基本结构是相同的。例如,对于展示用户信息的页面,当用户为 Tom 时,网页的源代码是   而当用户为 Jerry 时,网页的源代码是   这样的例子在包含动态内容的网站中还有很多。为了简化生成网页的工作,成成觉得他需要引入一套模板生成系统。   模板是包含特殊标记的文本。成成用到的...

jinduo16的博客 263

【CCF 201509-3】模板生成系统

大致思路 预处理:key "value" 使得key的形式为:{{ key }}   "value"的形式为:value 分别处理每一行 ①查找所有可能出现的{{ key }},将其替换为一个特殊的不可打印标记字符,而不是对应的value。把value压入vector&lt;string&gt; val,而这个特殊的不可打印标记字符就是:char(val.size()-1),标记了val...

Salmon_lee的博客 476

CCF 201509-3 模板生成系统

为代码量少而沾沾自喜的时候,60分,唉,跑了一秒多,估计是超时了。。。 【备注】string一定要初始化(= “”) #include<string> #include<iterator> using namespace std; string temp[105] = ""; struct Variable{ string paremeter = ""; string ...

番茄大人的博客 182

201509-3 模板生成系统 Java实现 (100分)

参考博客 核心代码二三十行,main主要就是处理输入数据,主要代码在replaceStr方法 import java.io.BufferedInputStream; import java.io.IOException; import java.util.*; public class Main{ public static void main(String[] args) throws IOException { Scanner input = new Scanner(new B

博主是个二次元死肥宅~ 230

CCF 201509-3 模板生成系统

思路: 1. 就字符串的查找替换,注意找好每次截断的字符串长度就好了。截错的话多试几次就好了。 2. 用map&lt;string, string&gt;来放键值对 代码如下: #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;vector&gt; #include &lt;map&gt; using name...

gengli2017的博客 274

CCF系列之模板生成系统( 201509-3 )

试题名称: 模板生成系统 试题编号: 201509-3 时间限制: 1.0s 内存限制: 256.0MB 问题描述   成成最近在搭建一个网站,其中一些页面的部分内容来自数据库中不同的数据记录,但是页面的基本结构是相同的。例如,对于展示用户信息的页面,当用户为 Tom 时,网页的源代码是  而当用户为 Jerry 时,网页的源代码是  这样的例子在包含动态内容的网站中...

weixin_33711647的博客 131
上一篇: CCF201403-3命令行选项JAVA
下一篇: CCF 201604-3 路径解析 java实现w
chenfanbraveheart
博客等级 码龄10年 1粉丝 4原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值