Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- public class Main {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- String s = scanner.next();
- Pair p = find(s);
- System.out.println(p.index + " " + p.length);
- }
- static Pair find(String s) {
- int ind = 0;
- char prev = s.charAt(0);
- char cur = s.charAt(0);
- int max_length = 0;
- int max_ind = 0;
- for (int i = 0; i < s.length(); ++i) {
- ind = i;
- prev = s.charAt(i);
- cur = s.charAt(i);
- int distinct = 1;
- int cur_ind = i;
- int cur_length = 0;
- boolean comp = false;
- while (ind < s.length() && (s.charAt(ind) == prev || s.charAt(ind) == cur)) {
- ++ind;
- ++cur_length;
- if (ind < s.length() && distinct == 1 && s.charAt(ind) != prev) {
- ++distinct;
- cur = s.charAt(ind);
- cur_ind = ind;
- }
- comp = true;
- }
- if (cur_length > max_length) {
- max_length = cur_length;
- max_ind = i;
- comp = true;
- }
- i = comp ? cur_ind - 1 : cur_ind;
- }
- Pair pair = new Pair();
- pair.index = max_ind;
- pair.length = max_length;
- return pair;
- }
- static class Pair {
- int index;
- int length;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement