Deep_Dev
article thumbnail
[프로그래머스][JAVA]Level 1 : 소수 찾기

문제 설명 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 조건 n은 2이상 1000000이하의 자연수입니다. 입출력 예 10 4 5 3 전에 배웠던 '에라토스테네스 체'를 이용했다. 배열 arr를 동적할당( 배열엔 현재 값이 0으로 초기화 ) 첫 소수인 2부터 반복문 시작해서, 인덱스 값이 0이면 소수 count 그리고 해당하는 소수의 배수들의 인덱스 값을 1로 변경( 그렇게 되면 이후에 arr[i]==0이 아니니 no count ) * 처음에 생각을 이상하게해서 .. int[] arr=new int[n]; 이렇게 배열을 생성했더니 index가 0부터 시작이니 ..

article thumbnail
[프로그래머스][JAVA]Level 1 : 없는 숫자 더하기

나는 처음에 리스트 반복문을 돌려서 포함되어 있지 않은수면 answer에 더해주는 식으로 생각했었는데 0~9부터 없는 숫자의 합은, 총 합에서 있는 숫자를 뺴주면 간단한 코드로 해결할 수 있었다... class Solution { public int solution(int[] numbers) { int answer=45; // 0~9까지의 합 for(int x: numbers){ answer-=x; } return answer; } }

article thumbnail
[프로그래머스][JAVA]Level 1 : 문자열 다루기 기본

문제 설명 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1 이상, 길이 8 이하인 문자열입니다. s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다. 입출력 예 "a234" false "1234" true 자주사용하는 문자열 메소드 charAt() Character.isDigit() class Solution { public boolean solution(String s) { boolean answer=true; if(s.length()==4||s.length()==6) { for (int i = 0; i..

article thumbnail
[백준][JAVA]1152번 : 단어의 개수

문제 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다. 입력 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열은 공백으로 시작하거나 끝날 수 있다. 출력 첫째 줄에 단어의 개수를 출력한다. StringTokenizer를 알기전에는 int cnt=1; for(char x:s.toCharArray()){ if(x==' ') cnt++; } 로 cnt값으로 출력해봤는데, 실행하면 결과는 잘 나오는데 백준에서 채점이 안..

article thumbnail
[백준][JAVA]10757번 : 큰 수 A+B

큰 수 A+B 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0 < A,B < 1010000) 출력 첫째 줄에 A+B를 출력한다. 처음에 단순히 그냥 덧셈문제인줄알았는데, 런타임에러가 떠서 자세히보니 Long타입의 범위도 넘어선 값을 출력하기때문에 BigInteger 를 이용해야했다. import java.io.BufferedReader; import java.io.InputStreamReader; import java.math.BigInteger; import java.io.IOException; import java.util.*; public class Main { public static void main(String[] a..

article thumbnail
[프로그래머스][JAVA]Level 1 : 같은 숫자는 싫어

문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한사항 배열 arr의 크기 : 1,000,000 이하의 자연수 배열 arr의 원소의 크기 : 0보다 크거나 ..

article thumbnail
[프로그래머스][JAVA]Level 1 : 핸드폰 번호 가리기

문제 설명 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 phone_number는 길이 4 이상, 20이하인 문자열입니다. 입출력 예 "01033334444" "*******4444" "027778888" "*****8888" class Solution { public String solution(String phone_number) { String answer=""; for(int i=0; i

article thumbnail
[프로그래머스][JAVA]Level 1 : 서울에서 김서방 찾기

문제 설명 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 제한 사항 seoul은 길이 1 이상, 1000 이하인 배열입니다. seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. "Kim"은 반드시 seoul 안에 포함되어 있습니다. 입출력 예seoulreturn ["Jane", "Kim"] "김서방은 1에 있다" 0번 인덱스부터 돌면서 "Kim"을 찾으면 해당 인덱스의 위치를 반환하는 간단한 문제. * 주의할 점은, 문자열의 비교는 ==가 아닌 equals를 사용할것. 똑같은 문자열이어도 =..