猜字谜

alt

源码 Java


import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import java.util.ArrayList;
import java.util.List;
import java.util.TreeSet;

public class GuessWord {

	public Input input;

	@BeforeEach
	public void init() {
		input= new Input("bdni,wooood\nbind,wrong,wood");
	}

	@Test
	public void test() {
		String string = input.nextLine();
		String[] words = string.split(",");
		String[] answers = input.nextLine().split(",");

		List<String> wordList = new ArrayList<>();
		List<String> answerList = new ArrayList<>();

		for (String word : words) {
			wordList.add(dealWord(word));
		}

		for (String answer : answers) {
			answerList.add(dealWord(answer));
		}

		List<String> result = new ArrayList<>();
		for (int i = 0; i < wordList.size(); i++) {
			int index = findWord(answerList, wordList.get(i));
			if (index != -1) {
				result.add(answers[i]);
			} else {
				result.add("not found");
			}
		}

		System.out.println(String.join(",", result));


	}

	public int findWord(List<String> lists , String word) {
		for (int i = 0; i < lists.size(); i++) {
			if (lists.get(i).equals(word)) {
				return i;
			}
		}
		return -1;

	}

	public String dealWord(String word) {
		TreeSet<Character> set = new TreeSet<>();
		for (int i = 0; i < word.length(); i++) {
			set.add(word.charAt(i));
		}
		Character[] array = set.toArray(new Character[set.size()]);
		StringBuilder answer = new StringBuilder();
		for (int i = 0; i < array.length; i++) {
			answer.append(array[i]);
		}
		return answer.toString();
	}
}

#牛客创作赏金赛##我的求职思考#
全部评论

相关推荐

前端工具是用于辅助前端开发和构建过程的软件或库。它们提供了一系列功能和工具,帮助开发人员提高开发效率、优化代码质量和提供更好的用户体验。以下是一些常见的前端工具及其作用:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&amp;uuid=9d41438f19104dca802ef21b5942c139包管理器:例如npm、Yarn等,用于管理项目中的依赖包,方便安装、更新和删除各种前端库和框架。前端框架:例如React、Vue.js等,提供了组件化开发的能力,简化了复杂页面的构建和维护。CSS预处理器:例如Sass、Less等,扩展了CSS的功能,提供了变量、混合、嵌套等特性,可以更高效地编写可维护的样式代码。前端构建工具:例如Webpack、Gulp等,用于将多个源文件(HTML、CSS、JavaScript等)打包、压缩、优化,提供代码分割、模块化等功能。任务运行器:例如Grunt、Gulp等,用于自动化执行重复性、繁琐的任务,如编译Sass、压缩图片、启动开发服务器等。浏览器开发者工具:浏览器内置的开发者工具,提供了调试、排查问题、性能分析等功能,帮助开发人员快速定位和修复问题。测试工具:例如Jest、Mocha等,用于编写和运行单元测试、端到端测试等,保证代码的质量和稳定性。这些前端工具可以根据项目的需求和开发人员的习惯选择使用,帮助开发人员更高效地开发、调试和部署前端应用。
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务