프로그래머스7일차

지선·2023년 5월 3일

코딩테스트

목록 보기
7/8

K의 개수

class Solution {
    public int solution(int i, int j, int k) {
        int answer = 0;
        
        for(int a=i;a<=j;a++){
            int b=a;
            while(true){
                if(b==0)break;
                if((b%10)==k){
                    answer++;
                }
                b=b/10;
            }
        }
        return answer;
    }
}

A로 B 만들기

class Solution {
    public int solution(String before, String after) {
        int answer = 0;
        int len=before.length();
        String []arr_b=new String[len];
        String []arr_a=new String[len];
        
        for (int i=0; i<len; i++) {
            arr_b[i]=before.substring(i,i+1);
        }
        for (int j=0; j<len; j++) {
            arr_a[j] = after.substring(j, j+1);
        } 
        int cnt=0;
        
        for(int i=0;i<len;i++){
            if(arr_b[i].equals(arr_a[len-i-1])){
            }
            else{
                return answer=0;
            }
        }
        return answer=1;
    }
}

이렇게.. 첨에 짰는데 오류 ~ ㅎ

~또 !

아 문제를 읽어보니까 a를 뒤집어 b로 만들 수 있느냐가 아니라
a를 이용해 b를 만들 수 있냐였다.. ㅋㅋㅋㅋㅋㅋㅋ

import java.util.Arrays;
class Solution {
    public int solution(String before, String after) {
        int answer = 0;
        int len=before.length();
        String []arr_b=new String[len];
        String []arr_a=new String[len];
        
        for (int i=0; i<len; i++) {
            arr_b[i]=before.substring(i,i+1);
        }
        for (int j=0; j<len; j++) {
            arr_a[j] = after.substring(j, j+1);
        }
        
        Arrays.sort(arr_b);
        Arrays.sort(arr_a);  
        
        for(int i=0;i<len;i++){
            if(arr_b[i].equals(arr_a[i])){
            }
            else{
                return answer=0;
            }
        }
        
        return answer=1;
    }
}

자꾸 왜 문제를 제대로 안읽고 풀려고 하는걸까..

7의 개수

class Solution {
    public int solution(int[] array) {
        int answer = 0;
        for(int i=0;i<array.length;i++){
            int a=array[i];
            for(int j=0;j<6;j++){
                if(a==0)break;
                if(a%10==7){
                    answer++;
                }
                a=a/10;
            }
        }
        return answer;
    }
}
profile
긍정왕되기

0개의 댓글