360 第一次笔试第二题 看花 Java ..

360第二题 打了个表a[i][j] 记录i到j时间段内的观看的种类数 ,没想到直接就AC了..

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.HashSet;
import java.util.Scanner;
public class Main {
static final int MAX = 2005;
static int a[] = new int[MAX];
static int n, m, q;
static int[][] kinds = new int[MAX][MAX];

public static void getKindTable() {
    HashSet set = new HashSet();
    for (int i = 1; i <= n; i++) {
        set.clear();
        for (int j = i; j <= n; j++) {
            set.add(a[j]);
            kinds[i][j] = set.size();
        }
    }
}

public static int getAns(int l, int r) {
    if (l > r) {
        int t = l;
        l = r;
        r = t;
    }
    return kinds[l][r];
}

public static void main(String[] args) {
    Scanner sc = new Scanner(new BufferedReader(new InputStreamReader(System.in)));
    n = sc.nextInt();
    m = sc.nextInt();
    for (int i = 1; i <= n; i++) {
        a[i] = sc.nextInt();
    }
    getKindTable();
    q = sc.nextInt();
    for (int i = 0; i < q; i++) {
        int l, r;
        l = sc.nextInt();
        r = sc.nextInt();
        System.out.println(getAns(l, r));
    }
}

}
#Java##题解#
全部评论
#include"iostream" using namespace std; int main() {     int n, m, count;     int a[2000];//看花的种类     int d[2000][2];     cin >> n >> m;//输入看花的次数,花的个数     for (int i = 0; i < n; i++)     {         cin >> a[i];//看到的花     }     cin >> count;//问题个数     for (int i = 0; i < count; i++)     {         for (int j = 0; j < 2; j++)         {             cin >> d[i][j];//区间             cout << " " << d[i][j];         }         cout << endl;     }     int iT = 0;     while (d[iT][0] != 0)     {         int p[M] = { 0 };//状态函数         for (int i = d[iT][0] - 1; i < d[iT][1]; i++)         {             p[a[i]] = 1;         }         for (int i = 1; i < m + 1; i++)             p[0] += p[i];         cout << p[0] << endl;         iT++;     } }
点赞 回复 分享
发布于 2018-09-04 20:58

相关推荐

10-24 00:54
已编辑
门头沟学院 Java
牛客20646354...:这连小厂都找不到就离谱,只能说可能你根本没投什么小厂。说实话现在都要11月了,没什么岗位了。其实最好是在9月找,那时候暑假工刚走,岗位多的是,现在都占满了岗位了,秋招的秋招,顶替暑假工的也基本上都顶替了。 只能多投了,简历其实都差不多,你这都不是外卖+点评去找实习了,已经比好多人优秀了。实在找不到,可以降低一些标准的,能投到自研项目的小厂说实话可能比你去中大厂能学到更多东西。因为中大厂最多给你看一点点模块功能,小厂基本上全部代码甚至几个项目的代码都能拿到。
点赞 评论 收藏
分享
评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务