Java实现 蓝桥杯VIP 算法训练 黑白无常
算法训练 黑白无常
时间限制:1.0s 内存限制:256.0MB
问题描述
某寝室的同学们在学术完之后准备玩一个游戏:游戏是这样的,每个人头上都被贴了一张白色或者黑色的纸,现在每个人都会说一句话“我看到x张白色纸条和y张黑色的纸条”,又已知每个头上贴着白色纸的人说的是真话、每个头上贴着黑色纸的人说的是谎话,现在要求你判断哪些人头上贴着的是白色的纸条,如果无解输出“NoSolution.”;如果有多组解,则把每个答案中贴白条的人的编号按照大小排列后组成一个数(比如第一个人和第三个人头上贴着的是白纸条,那么这个数就是13;如果第6、7、8个人都贴的是白纸条,那么这个数就是678)输出最小的那个数(如果全部都是黑纸条也满足情况的话,那么输出0)
输入格式
第一行为一个整数n,接下来n行中的第i行有两个整数x和y,分别表示第i个人说“我看到x张白色纸条和y张黑色的纸条”。
输出格式
一行。如果无解输出“NoSolution.”。否则输出答案中数值(具体见问题描述)最小的那个,如果全部都是黑纸条也满足情况的话,那么输出0
样例输入
2
1 0
1 0
样例输出
0
样例输入
5
3 1
0 4
1 3
4 0
1 3
样例输出
35
数据规模和约定
n<=8
import java.util.Scanner;
public class 黑白无常 {
public static void main(String args[]) {
Scanner scanner = new Scanner(System.in);
int[][] xy;
int n, x, y;
n = scanner.nextInt();
xy = new int[n + 1][2];
for (int i = 1; i < n + 1; i++) {
xy[i][0] = scanner.nextInt();
xy[i][1] = scanner.nextInt();
}
String[] result = new String[n + 1];
int flag = 1;
for (int i = 1; i < n + 1; i++) {//从第i个人开始循环
// 是否为全黑标志位
if (xy[i][0] == 0 && xy[i][1] == n - 1)
flag = 0;
result[i] = "" + i;
for (int a = 1; a < n + 1; a++) {//开始循环每个a
if(a == i)continue ;
if (xy[i][0] == xy[a][0] && xy[i][1] == xy[a][1]) {
//如果看到相同的人就可能是两个白人
if(xy[i][0] == 0){
result[0] = a<i ? ""+a : ""+i ;
}
//当前白人如果小于看到的白人+1(他自己)
if (result[i].length() < (xy[i][0]+1))
result[i] = result[i] + a;
}
}
}
if (flag == 1) {//搜索最小的那个
System.out.println(0);
} else {
int temp = 100000000;
for (int i = 1; i <= n; i++) {
if (result[i].length() > 1) {
if(temp != 100000000 && String.valueOf(temp).length() < result[i].length()){
temp = Integer.parseInt(result[i]) ;
}else{
temp = temp > Integer.parseInt(result[i]) ? Integer
.parseInt(result[i]) : temp;
}
}
}
if (temp != 100000000) {
System.out.println(temp);
} else if(result[0] != null){
System.out.println(result[0]) ;
}else{
System.out.println("NoSolution.") ;
}
}
}
}
Java实现 蓝桥杯VIP 算法训练 黑白无常的更多相关文章
- Java实现蓝桥杯VIP 算法训练 找公倍数
问题描述 这里写问题描述. 打印出1-1000所有11和17的公倍数. 样例输入 一个满足题目要求的输入范例. 样例输出 与上面的样例输入对应的输出. 这道题其实没有什么可写的,但是为了让读者更方便的 ...
- Java实现 蓝桥杯VIP 算法训练 连通分块(并查集)
试题 算法训练 连通分块 资源限制 时间限制:200ms 内存限制:8.0MB 问题描述 连通分块 输入格式 输入的第一行包含两个整数n, m n代表图中的点的个数,m代表边的个数 接下来m行,每行2 ...
- Java实现 蓝桥杯VIP 算法训练 无权最长链
试题 算法训练 无权最长链 问题描述 给定一个n节点m边的无圈且连通的图,求直径 输入格式 第一行两个数字n,m 接下来m行每行两个数字x,y,代表x,y之间有一条边 输出格式 要求用户的输出满足的格 ...
- Java实现 蓝桥杯VIP 算法训练 星际交流
算法训练 星际交流 时间限制:1.0s 内存限制:256.0MB 问题描述 人类终于登上了火星的土地并且见到了神秘的火星人.人类和火星人都无法理解对方的语言,但是我们的科学家发明了一种用数字交流的方法 ...
- Java实现 蓝桥杯VIP 算法训练 Car的旅行路线
大家可以看一下这个,蓝桥杯官网的这道题是有问题的 Car的旅行路线 算法训练 Car的旅行路线 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 查看参考代码 问题描述 又到暑假 ...
- Java实现 蓝桥杯VIP 算法训练 最大质因数(暴力)
试题 算法训练 最大质因数 问题描述 给出N个数字,求出有最大的最大质因数的那个数 输入格式 第一行:一个整数N. 接下来的N行,每行一个整数A_i,表示给出的那N个数字. 输出格式 第一行:一个整数 ...
- Java实现 蓝桥杯VIP 算法训练 与1连通的点的个数(并查集)
试题 算法训练 与1连通的点的个数 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 没有问题描述. 输入格式 输入的第一行包含两个整数n, m n代表图中的点的个数,m代表边的个数 ...
- Java实现 蓝桥杯VIP 算法训练 非递归(暴力)
试题 算法训练 非递归 问题描述 当x>1时,Hermite多项式的定义见第二版教材125页.用户输入x和n,试编写"非递归"函数,输出对应的Hermite多项式的值.其中x ...
- Java实现 蓝桥杯VIP 算法训练 步与血(递推 || DFS)
试题 算法训练 步与血 问题描述 有n*n的方格,其中有m个障碍,第i个障碍会消耗你p[i]点血.初始你有C点血,你需要从(1,1)到(n,n),并保证血量大于0,求最小步数. 输入格式 第一行3个整 ...
随机推荐
- LeetCode 102. 二叉树的层序遍历 | Python
102. 二叉树的层序遍历 题目来源:https://leetcode-cn.com/problems/binary-tree-level-order-traversal 题目 给你一个二叉树,请你返 ...
- Java设计模式之建造者模式(Builder Pattern)
前言 这篇文章主要向大家讲解什么是建造者模式,建造者模式的实例讲解及应用场景等知识点. 一.建造者介绍 用户可以不知道产品的构建细节直接可以创建复杂的对象,主要是分离了产品的构建和装配,这样就实现 ...
- Redis学习笔记(六) 对象
前面我们看了Redis用到的主要数据结构,如简单动态字符串(SDS).双向链表.字典.压缩列表.整数集合等. 但是Redis并没有直接使用这些数据结构来实现键值对,而是基于这些数据结构创建了一个对象系 ...
- EOS基础全家桶(十一)智能合约IDE-EOS_Studio
简介 我们马上要进入智能合约的开发了,以太坊最初提供了智能合约的功能,并宣告区块链进入2.0时代,而EOS的智能合约更进一步,提供了更多的便利性和可能性.为了进一步了解智能合约,并进行开发,我们需要先 ...
- Vue2.0 + ElementUI 手写权限管理系统后台模板(一)——简述
挤一下: 一开始以为没有多少人用就没建群,但是加我的人太多了,好多问题都是重复的,所以建个群大家互相沟通交流方便点,但是建的有点晚,错过了好多人所以群里人有点少,QQ群: 157216616 小提示 ...
- HDU 2012 (水)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2012 题目大意:给你段连续数字,判断每个数字带入函数 n^2+n+41 是否都为素数,是输入OK,否则 ...
- Vue中跨域问题解决方案1
我们需要配置代理.代理可以解决的原因:因为客户端请求服务端的数据是存在跨域问题的,而服务器和服务器之间可以相互请求数据,是没有跨域的概念(如果服务器没有设置禁止跨域的权限问题),也就是说,我们可以配置 ...
- tp5.1使用路径常量
echo "app_path=========".Env::get('app_path')."</br>"; echo "root_pat ...
- Web_php_include-攻防世界
0x00 简介 记录这个题纯粹是为了记录以下有关strstr()函数的相关知识. 0x01 题目 <?php show_source(__FILE__); echo $_GET['hello'] ...
- pc建站自适应
转载 来自https://www.cnblogs.com/eyed/p/7872521.html HTML5----响应式(自适应)网页设计 现在,很多项目都需要做响应式或者自适应的来适应 ...