6.23 프로그래머스 level1

BioBeBE·2022년 6월 26일
0

프로그래머스

목록 보기
21/40
  1. 문자열을 정수로 바꾸기
class Solution {
    public int solution(String s) {
        int answer = 0;
        if(s.charAt(0)=='-'){
            answer+=-Integer.parseInt(s.substring(1));
        }
        else answer+=Integer.parseInt(s);
        return answer;
    }
}
  1. 수박수박수박
class Solution {
    public String solution(int n) {
        String answer = "";
        answer+="수";
        for(int i=1;i<n;i++){
            if(answer.substring(i-1,i).equals("수"))answer+="박";
            else answer+="수";
        }
        return answer;
    }
}
  1. 소수 찾기
class Solution {
    public int solution(int n) {
        int answer = 0;
        int a[] = new int[n+1];
        for(int i=2;i<n+1;i++){
            if(a[i]==0)answer++;
            for(int j=i;j<n+1;j=i+j){
                a[j]=1;
            }
        }
        return answer;
    }
}
  1. 서울에서 김서방 찾기
class Solution {
    public String solution(String[] seoul) {
        String answer = "";
        for(int i=0;i<seoul.length;i++){
            if(seoul[i].equals("Kim"))answer += "김서방은 "+i+"에 있다";
        }
        return answer;
    }
}
  1. 문자열 다루기 기본
class Solution {
    public boolean solution(String s) {
        boolean answer = true;
        if(s.length()==4 ||s.length()==6){
            for(char x: s.toCharArray()){
                if(!Character.isDigit(x))return false;
             }
        }else return false;
        return answer;
    }
}
  1. 문자열 내림차순 배치하기
import java.util.Queue;
import java.util.LinkedList;

class Solution {
    public String solution(String s) {
        String answer = "";
        Queue<Character> Q = new LinkedList<>();    
        for(char x : s.toCharArray())Q.offer(x);
        while(Q.size()>0){
            char tmp = Q.poll();
            for(char y : Q){
                if(((tmp>=97 && tmp<=122)&&(y>=97 && y<=122))||((tmp>=65 && tmp<=90)&&(y>=65 && y<=90))){
                    if(tmp<y){
                        Q.offer(tmp);
                        tmp=' ';
                        break;
                    }
                }else if((tmp>=65 && tmp<=90)&&(y>=97 && y<=122)){
                    Q.offer(tmp);
                    tmp=' ';
                    break;
                }
            }
            if(tmp!=' ')answer+=tmp;    
        }
        return answer;
    }
}
  1. 문자열 내 p와 y의 개수
import java.util.HashMap;
class Solution {
    boolean solution(String s) {
        boolean answer = true;
        HashMap<Character, Integer> map = new HashMap<>();
        for(char x : s.toUpperCase().toCharArray()){
            map.put(x, map.getOrDefault(x,0)+1);
        }
        if(map.get('P')!=map.get('Y')) return false;
        return answer;
    }
}
import java.util.HashMap;
class Solution {
    boolean solution(String s) {
        boolean answer = true;
        int Pcount=0, Ycount=0;
        char[] a = s.toUpperCase().toCharArray();
        for(int i=0;i<a.length;i++){
            if(a[i]=='P')Pcount++;
            else if(a[i]=='Y')Ycount++;
        }
        if(Pcount!=Ycount)return false;
        
        return answer;
    }
}
profile
개발자지망생

0개의 댓글