日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

以色辨位的Farmer(洛谷P5832题题解,Java语言描述)

發(fā)布時(shí)間:2025/3/15 java 12 豆豆
生活随笔 收集整理的這篇文章主要介紹了 以色辨位的Farmer(洛谷P5832题题解,Java语言描述) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

題目要求

P5832題目鏈接

分析

題意呢,比較迷惑,我看了很久才知道啥意思,這里有兩種版本的解讀,意思是一樣的:

  • 找到在該字符串中只出現(xiàn)一次的、滿足所有長(zhǎng)度為k 的、子串,求 k 的最小值。
  • 找到在該字符串中出現(xiàn)兩次(或以上)的、完全相等的、長(zhǎng)度為k-1的子串,求k的最大值。

與子串相關(guān),下面的代碼按照思路2寫的。

題外話,子串問題建議了解KMP算法(挺難懂的一個(gè)算法)……溜……

AC代碼(Java語(yǔ)言描述)

import java.util.Scanner;public class Main {private static char[] chars;private static int count(int i, int j, int num, int sum) {if(i < num && j < num && chars[i] == chars[j]) {return count(i+1, j+1, num, ++sum);}return sum;} ·public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int num = Integer.parseInt(scanner.nextLine());chars = scanner.nextLine().toCharArray();scanner.close();int counter = 0;for(int i = 0; i < num; i++) {for(int j = i+1; j < num; j++) {int sum = count(i, j, num, 0);if(sum > counter) {counter = sum;}}}System.out.println(counter+1);}}

總結(jié)

以上是生活随笔為你收集整理的以色辨位的Farmer(洛谷P5832题题解,Java语言描述)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。