블 루 브리지 컵 자바 알고리즘 훈련 문자열 통계
1582 단어 블 루 브리지 컵 자바알고리즘자바
자원 제한 시간 제한: 1.0s 메모리 제한: 512.0MB 문 제 는 n 길이 의 문자열 S 를 지정 하고 숫자 L 도 있 습 니 다. 통계 길이 가 L 과 같은 횟수 가 가장 많은 하위 문자열 (서로 다른 등장 이 교차 할 수 있 음) 보다 크 면 여러 개, 출력 이 가장 긴 경우 여러 개가 있 으 면 출력 이 처음으로 나타 납 니 다.형식 첫 줄 의 숫자 L 을 입력 하 십시오.두 번 째 줄 은 문자열 S 입 니 다.L 은 0 보다 크 고 S 의 길 이 를 초과 하지 않 습 니 다.출력 형식 한 줄, 제목 이 요구 하 는 문자열.
입력 샘플 1: 4 bbaabbaaaaa
출력 샘플 1: bbaa
입력 샘플 2: 2 bbaabbaaaaa
출력 사례 2: aa 데이터 규모 와 약정 n < = 60 S 의 모든 문 자 는 소문 자 입 니 다.가능 한 모든 하위 문자열 을 제시 하고 발생 횟수 를 통계 하 며 조건 에 맞 는 것 을 찾 습 니 다.
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int i, j, count;
int l = in.nextInt();
ArrayList sum = new ArrayList<>(); //
String s = in.next();
int len = s.length();
sum.add(s);
//
for (i = len - 1; i >= l; i--) { //
for (j = 0; j <= len - i; j++) { //
sum.add(s.substring(j, j+i));
}
}
//
int max = 0;
Map result = new HashMap(); //
for (i = 0; i < sum.size(); i++) {
count = 0;
for (j = 0; j < sum.size(); j++) {
if (sum.get(j).equals(sum.get(i))) count++;
}
if (!result.containsKey(count)) { //
result.put(count, sum.get(i));
if (count > max) max = count; //
}
}
System.out.println(result.get(max));
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
블 루 브리지 컵 자바 알고리즘 훈련 문자열 통계알고리즘 트 레이 닝 문자열 통계 자원 제한 시간 제한: 1.0s 메모리 제한: 512.0MB 문 제 는 n 길이 의 문자열 S 를 지정 하고 숫자 L 도 있 습 니 다. 통계 길이 가 L 과 같은 횟수 가 가장 많...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.