首页 > 其他分享 >P2249 【深基13

P2249 【深基13

时间:2022-12-26 15:45:49浏览次数:56  
标签:StreamTokenizer 13 P2249 int 深基 快输 快读 new

P2249 【深基13.例1】查找

传送门

注意点

  1. Java没有算法库,需要手写二分。
  2. 输入输出次数过多,不能用Scanner类来读取,读取的太慢了会导致超时并且内存超限,应该要用快读快输,不过这道题不要快输也行,所以必须记住快读数字,快读字符串,和快输的模板。
  3. 注意防止数组下标越界
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.StreamTokenizer;

public class Main {
	static int n, m, x;
	static int[] nums;

	public static void main(String[] args) throws Exception {
		Read sc = new Read();
		n = sc.nextInt();
		m = sc.nextInt();
		nums = new int[1000002];
		for (int i = 1; i <= n; i++) {
			nums[i] = sc.nextInt();
		}
		for (int i = 0; i < m; i++) {
			x = sc.nextInt();
			f(x);
			System.out.print(f(x));
			if (i != m - 1)
				System.out.print(" ");
		}
	}

	public static int f(int x) {
		int l = 1, r =n+1;//不为r = nums.length + 1  这样会导致r = nums.length + 1
		while (l < r) {
			int m = l + (r - l) / 2;
			if (nums[m] >= x)
				r = m;
			else
				l = m + 1;
		}
		return nums[l] == x ? l : -1;
	}

}

//快读
class Read {
	StreamTokenizer st = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));

	public int nextInt() throws Exception {
		st.nextToken();
		return (int) st.nval;
	}
}

标签:StreamTokenizer,13,P2249,int,深基,快输,快读,new
From: https://www.cnblogs.com/ANDQE/p/17005950.html

相关文章

  • ts13_继承
    (function(){//定义一个dog类classAnimal{name:string;age:number;constructor(name:string,age:number){......
  • S1 - Lesson 135 - 136
    Wordsfuturedoyoureallycareaboutyourfuture?sheishisfuturewife   getmarriedTheygotmarriedlastyear. marrymarriedmarried Willyoum......
  • CF213E Two Permutations
    好久没有交流题目了啊,回来补一下之前的哈。题目要使 $a_1+x$,$a_2+x$,$\cdots$,$a_n+x$是$b$序列的子序列。这里最烦的部分应该就是子序列是不连续的。注意到$a$序列......
  • S1 - Lesson 133 - 134
    Wordsreporterreportweeklyreportjournalistsomeonewhosejobistowritefornewspapersormagazines. reporter:apersonwhogathersnewsforradio,tel......
  • 龙蜥开发者说:开源是场马拉松!来自广州大学姚同学的开源成长记 | 第 13 期
    「龙蜥开发者说」第13期来了!开发者与开源社区相辅相成,相互成就,这些个人在龙蜥社区的使用心得、实践总结和技术成长经历都是宝贵的,我们希望在这里让更多人看见技术的力量......
  • microsoft visual studio 2013 community - The online service is not available 解
    在注册表中添加以下两个值。 1. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols   TLS1.0  类型:DWORD,值:1 2......
  • P3336 [ZJOI2013]话旧
    P3336[ZJOI2013]话旧题意:\(f(x)\)为定义在\([0,N]\)的连续函数\(f(x)\),其中\(N\)是整数,满足\(f(0)=f(N)=0\),它的所有极值点在正输出去到,且\(f(x)\)的......
  • 蓝桥-13届-C++-B组-省赛-G题-积木画
    直达链接当时第一眼看到觉得题型挺眼前一亮的,但是怎么做,没想法,也不明白考点在哪里画布高度固定是2,但是积木可以任意旋转,可以说L型只能和自己组合怎么用编程解决空间问题......
  • S1 - Lesson 131 - 132
    WordsEgypt abroadabroadgoabroad出国travelabroadliveabroad worrydon'tworryworryaboutmeHermotherworriesabouthermarriage.    ......
  • Java编程思想13
    第十八章:JavaI/O系统对程序语言的设计者而言,创建一个好的输入/输出(I/O)系统是一项艰难的任务。File类既能代表一个特定文件的名称,又能代表一个目录下一组文件的名称。下......