"HR자바 Java Substring Comparisons"의 두 판 사이의 차이

(새 문서: ==개요== ;{{subst:PAGENAME}} * {{HR자바 헤더}} {{HR자바 Strings}} |} ---- <source lang='java'> </source>)
 
잔글 (봇: 자동으로 텍스트 교체 (-</source> +</syntaxhighlight>, -<source +<syntaxhighlight ))
 
(다른 사용자 한 명의 중간 판 2개는 보이지 않습니다)
1번째 줄: 1번째 줄:
==개요==
==개요==
;HR자바 Java Substring Comparisons
;HR자바 Java Substring Comparisons
*  
* https://www.hackerrank.com/challenges/java-string-compare/problem


{{HR자바 헤더}}
{{HR자바 헤더}}
9번째 줄: 9번째 줄:
----
----


<source lang='java'>
<syntaxhighlight lang='java'>
</source>
import java.util.Scanner;
 
public class Solution {
</syntaxhighlight>
<syntaxhighlight lang='java'>
    public static String getSmallestAndLargest(String s, int k) {
        String smallest = s.substring(0,k);
        String largest = s.substring(0,k);
       
        // Complete the function
        // 'smallest' must be the lexicographically smallest substring of length 'k'
        // 'largest' must be the lexicographically largest substring of length 'k'
        String ss;
        for(int i=1; i<s.length()-k+1; i++) {
            ss = s.substring(i,i+k);
            if( ss.compareTo(smallest)<0 ) smallest=ss;
            if( ss.compareTo(largest)>0 ) largest=ss;
        }
        return smallest + "\n" + largest;
    }
</syntaxhighlight>
<syntaxhighlight lang='java'>
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String s = scan.next();
        int k = scan.nextInt();
        scan.close();
     
        System.out.println(getSmallestAndLargest(s, k));
    }
}
</syntaxhighlight>

2020년 11월 2일 (월) 02:51 기준 최신판

개요[ | ]

HR자바 Java Substring Comparisons
해커랭크 Java
# 문제 비고
HR자바 Strings e
14 HR자바 Java Strings Introduction
15 HR자바 Java Substring
16 HR자바 Java Substring Comparisons
17 HR자바 Java String Reverse
18 HR자바 Java Anagrams
19 HR자바 Java String Tokens
20 HR자바 Pattern Syntax Checker
21 HR자바 Java Regex
22 HR자바 Java Regex 2 - Duplicate Words
23 HR자바 Valid Username Regular Expression
24 HR자바 Tag Content Extractor

import java.util.Scanner;

public class Solution {
    public static String getSmallestAndLargest(String s, int k) {
        String smallest = s.substring(0,k);
        String largest = s.substring(0,k);
        
        // Complete the function
        // 'smallest' must be the lexicographically smallest substring of length 'k'
        // 'largest' must be the lexicographically largest substring of length 'k'
        String ss;
        for(int i=1; i<s.length()-k+1; i++) {
            ss = s.substring(i,i+k);
            if( ss.compareTo(smallest)<0 ) smallest=ss;
            if( ss.compareTo(largest)>0 ) largest=ss;
        }
        return smallest + "\n" + largest;
    }
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String s = scan.next();
        int k = scan.nextInt();
        scan.close();
      
        System.out.println(getSmallestAndLargest(s, k));
    }
}
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}