800. 배열 요소 의 목표 와 (더 블 포인터 알고리즘)
데 이 터 는 유일한 해 가 있 음 을 보증한다.
입력 형식
첫 번 째 줄 은 세 개의 정수 n, m, x 를 포함 하고 각각 A 의 길이, B 의 길이 와 목표 치 x 를 나타 낸다.
두 번 째 줄 은 n 개의 정 수 를 포함 하고 배열 A 를 나타 낸다.
세 번 째 줄 은 m 개의 정 수 를 포함 하고 배열 B 를 나타 낸다.
출력 형식
두 개의 정수 i 와 j 를 포함 하 는 한 줄 입 니 다.
데이터 범위
배열 의 길 이 는 100000 을 넘 지 않 습 니 다.같은 배열 안의 요 소 는 각각 다르다.1 ≤ 수조 원 소 ≤ 1091 ≤ 수조 원 소 ≤ 109
입력 예시:
4 5 6
1 2 4 7
3 4 6 8 9
출력 예시:
1 1
思路:因为数据有唯一解,并且数组有序;所以可以给两个数组两个指针,一个数组指针在头,一个数组指针在尾;两个指针向中间移动,直到和等于x为止
代码:
import java.util.*;
public class Main{
static final int max=100005;
static int a[]=new int[max];
static int b[]=new int[max];
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
int n=scan.nextInt();
int m=scan.nextInt();
long x=scan.nextLong();
for(int i=0;iscan.nextInt();
for(int i=0;iscan.nextInt();
for(int i=0,j=m-1;i){
while(j>=0 && a[i]+b[j]>x) j--;
if(a[i]+b[j]==x){
System.out.println(i+" "+j);
break;
}
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.