Light

题目描述

在小红家里面,有n组开关,触摸每个开关,可以使得一组灯泡点亮。现在问你,使用这n组开关,最多能够使得多少个灯泡点亮呢?

输入

第一行一个n,表示有n组开关。接下来n行,每行第一个整数为k,表示这个开关控制k个灯泡,接下来k个整数,表示控制的灯泡序号。

满足:1<=n<=1000 、1<=k<=1000 、序号是在int范围内正整数。

输出

输出最多多少个灯泡点亮。

样例输入

3

1 1

1 2

2 1 2

样例输出

2

思路

这道题是一个去重的问题,即多个开关可能按下都使同一个开关亮,那么可以利用HashSet去重。

代码实现

package lianjia.demo1;

import java.util.HashSet;
import java.util.Scanner; /**
* 题目描述:
* 在小红家里面,有n组开关,触摸每个开关,可以使得一组灯泡点亮。
* 现在问你,使用这n组开关,最多能够使得多少个灯泡点亮呢?
* 输入
* 第一行一个n,表示有n组开关。
* 接下来n行,每行第一个整数为k,表示这个开关控制k个灯泡,接下来k个整数,表示控制的灯泡序号。
* 满足:
* 1<=n<=1000
* 1<=k<=1000
* 序号是在int范围内正整数。
* 输出
* 输出最多多少个灯泡点亮。
*/
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int k;
int x;
HashSet<Integer> set = new HashSet<>();
for (int i = 0; i < n; i++) {
k = sc.nextInt();
for (int j = 0; j < k; j++) {
x = sc.nextInt();
set.add(x);
}
}
System.out.println(set.size());
}
}

triangle

题目描述

在迷迷糊糊的大草原上,小红捡到了n根木棍,第i根木棍的长度为i,小红现在很开心。她想选出其中的三根木棍组成美丽的三角形。但是小明想捉弄小红,想去掉一些木棍,使得小红任意选三根木棍都不能组成三角形。请问小明最少去掉多少根木棍呢?

输入

本题包含若干组测试数据。对于每一组测试数据。第一行一个n,表示木棍的数量。满足 1<=n<=100000

输出

输出最少数量

样例输入

4

样例输出

1

思路

如果两边和大于第三边,那么要去掉的木棍数加1,否则都加1,继续判断

代码实现

package lianjia.demo2;

import java.util.Scanner;

/**
* 题目描述:
* 在迷迷糊糊的大草原上,小红捡到了n根木棍,第i根木棍的长度为i,小红现在很开心。
* 她想选出其中的三根木棍组成美丽的三角形。
* 但是小明想捉弄小红,想去掉一些木棍,使得小红任意选三根木棍都不能组成三角形。
* 请问小明最少去掉多少根木棍呢?
* 输入
* 本题包含若干组测试数据。
* 对于每一组测试数据。
* 第一行一个n,表示木棍的数量。
* 满足 1<=n<=100000
* 输出
* 输出最少数量
*/
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int i, n;
int count = 0;
int a = 2;
int b = 3;
while (sc.hasNext()) {
n = sc.nextInt();
for (i = 4; i <= n; i++) {
if (a + b > i) {
count++;
} else {
a = b;
b = i;
}
}
System.out.println(count);
count = 0;
a = 2;
b = 3;
}
}
}

链家2018春招Java工程师编程题题解的更多相关文章

  1. 爱奇艺2018春招Java工程师编程题题解

    字典序最大子序列 题目描述 对于字符串a和b,如果移除字符串a中的一些字母(可以全部移除,也可以一个都不移除)就能够得到字符串b我们就称b是a的子序列. 例如."heo"是&quo ...

  2. 京东2019春招Java工程师编程题题解

    生成回文串 题目描述 对于一个字符串,从前开始读和从后开始读是一样的,我们就称这个字符串是回文串. 例如"ABCBA","AA","A"是回 ...

  3. 链家2018春招C/C++开发实习生在线考试编程题

    题目一 题解:该题目意思就是让你输入n组数据,然后求并集,利用STL容器set集合的特性:元素不重复存储,我们可以很轻易得出答案 #include <iostream> #include ...

  4. 2018春招-今日头条笔试题-第四题(python)

    题目描述:2018春招-今日头条笔试题5题(后附大佬答案-c++版) #-*- coding:utf-8 -*- class Magic: ''' a:用于存储数组a b:用于存储数组b num:用于 ...

  5. 2018春招-今日头条笔试题-第三题(python)

    题目描述:2018春招-今日头条笔试题5题(后附大佬答案-c++版) 解题思路: 本题的做法最重要的应该是如何拼出‘1234567890’,对于输入表达试获得对应的结果利用python内置函数eval ...

  6. 2018春招-今日头条笔试题-第二题(python)

    题目描述:2018春招-今日头条笔试题5题(后附大佬答案-c++版) 解题思路: 利用深度优先搜索 #-*- coding:utf-8 -*- class DFS: ''' num:用于存储最后执行次 ...

  7. 2018春招-今日头条笔试题-第一题(python)

    题目描述:2018春招-今日头条笔试题5题(后附大佬答案-c++版) 解题思路: 要想得到输入的数字列中存在相隔为k的数,可以将输入的数字加上k,然后判断其在不在输入的数字列中即可. #-*- cod ...

  8. 2018春招实习笔试面试总结(PHP)

    博主双非渣本计算机软件大三狗一枚,眼看着春招就要结束了,现将自己所经历的的整个春招做一个个人总结. 首先就是关于投递计划,博主自己整理了一份各大公司的春招信息,包括网申地址,开始时间,结束时间,以及自 ...

  9. 2016网易春招Java在线笔试回忆录

    别看是在线笔试,但是非常严格,全称窗口不得最小化和关闭,转移,全称需要打开摄像头监控,使用草稿纸需要摄像头对准……反正2个小时,题量在那儿摆着,有作弊的功夫不如好好做做最后的编程题呢……网易不让泄漏原 ...

随机推荐

  1. Global.asax 中校验Session

    Application 相关的 Application_Init:在每一个HttpApplication实例初始化的时候执行. Application_Disposed:在每一个HttpApplica ...

  2. 特定场景下Ajax技术的使用

    ajax介绍 jax技术包含了几种技术:javascript.xml.css.xstl.dom.xhtml和XMLHttpRequest七种技术,所以ajax就像是粘合剂把七种技术整合到一起,从而发挥 ...

  3. Oracle GoldenGate实现数据库同步

    前言:最近刚好在弄数据库同步,网上查了些资料再加上自己整理了一些,做个分享! 一.GoldenGate的安装 1.安装包准备 数据库版本:Oracle Database 11g Release 2(1 ...

  4. Windows 下安装 swoole 具体步骤

    Windows 下安装 swoole 具体步骤: Swoole,原本不支持在Windows下安装的,所以我们要安装Cygwin来使用.在安装Cygwin下遇到了很多坑,百度经验上的文档不是很全,所以我 ...

  5. 员工选票系统-java

    Yuangong.java package com.toupiao; public class Yuangong { private String name; private int piao; pu ...

  6. 在js中实现新窗口打开页面

    我们都知道可以在html代码中使用<a href="xxxx" target="_blank"></a>这种方式来打开一个新的窗口打开一 ...

  7. V5.7_UTF8_SP1、SP2---任意前台用户登录(cookie伪造)

    漏洞触发点在include/memberlogin.class.php中的MemberLogin类中的登录校验函数 可以看到M_ID参数是由GetNum(GetCookie("DedeUse ...

  8. 在oracle中,group by后将字符拼接,以及自定义排序

    1.在oracle中,group by后将字符拼接.任务:在学生表中,有studentid和subject两个字段.要求对studentid进行group by分组,并将所选科目拼接在一起.oracl ...

  9. JS面向对象与面向过程

    前言 面向对象编程: 就是将你的需求抽象成一个对象,然后针对这个对象分析其特征(属性)与动作(方法)--这个对象就称之为类 面向过程编程: 特点:封装,就是将你需要的功能放在一个对象里面 ------ ...

  10. 图解script的三种加载方式 异步加载顺序

    摘录如下: 可以很清晰的看出: <script>: 脚本的获取和执行是同步的.此过程中页面被阻塞,停止解析. <script defer = "defer"> ...