2023년 1월 1일
08:00 AM
Buffering ...

최근 글 👑

Lv0 C# 프로그래머스 #8 - 삼각형의 완성조건(1), 문자열안에 문자열, 배열의 유사도

2023. 8. 10. 16:47ㆍ프로그래머스 C# 코딩테스트
반응형

25. 삼각형의 완성조건 (1)

 

문제 설명

  • 선분 세 개로 삼각형을 만들기 위해서는 다음과 같은 조건을 만족해야 합니다. 
    • 가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 합니다. 
  • 삼각형의 세 변의 길이가 담긴 배열 sides이 매개변수로 주어집니다. 
  • 세 변으로 삼각형을 만들 수 있다면 1, 만들 수 없다면 2를 return하도록 solution 함수를 완성해주세요.

제한사항

  • sides의 원소는 자연수입니다. 
  • sides의 길이는 3입니다. 
  • 1 ≤ sides의 원소 ≤ 1,000

입출력 예시

  • 가장 큰 변인 3이 나머지 두 변의 합 3과 같으므로 삼각형을 완성할 수 없습니다. 따라서 2를 return합니다.
  • 가장 큰 변인 6이 나머지 두 변의 합 5보다 크므로 삼각형을 완성할 수 없습니다. 따라서 2를 return합니다.
  • 가장 큰 변인 222가 나머지 두 변의 합 271보다 작으므로 삼각형을 완성할 수 있습니다. 따라서 1을 return합니다.

풀이

using System;

public class Solution {
    public int solution(int[] sides) {
        // 올림차순으로 sides 정렬
        Array.Sort(sides);
        // 다른 두변의 합 - 가장 큰 변 
        if(sides[0] + sides[1] - sides[2] > 0) return 1;
        else return 2;
    }
}

 

26. 문자열안에 문자열

 

문제 설명

  • 문자열 str1, str2가 매개변수로 주어집니다. str1 안에 str2가 있다면 1을 없다면 2를 return하도록 
    solution 함수를 완성해주세요.

제한사항

  • 1 ≤ str1의 길이 ≤ 100
  • 1 ≤ str2의 길이 ≤ 100
  • 문자열은 알파벳 대문자, 소문자, 숫자로 구성되어 있습니다.

입출력 예시

  • ab6CDE443fgh22iJKlmn1o" str1에 str2가 존재하므로 1을 return합니다.
  • "ppprrrogrammers" str1에 str2가 없으므로 2를 return합니다.
  • "AbcAbcA" str1에 str2가 없으므로 2를 return합니다.

풀이

using System;
using System.Linq;

public class Solution {
    public int solution(string str1, string str2) {
        // Contains 메서드는 문자열 내 특정 문자열 포함 여부 확인
       if(str1.Contains(str2)){
           return 1;
       } else {
           return 2;
       }
    }
}

 

27. 배열의 유사도

 

문제 설명

  • 두 배열이 얼마나 유사한지 확인해보려고 합니다. 문자열 배열 s1과 s2가 주어질 때 같은 원소의 개수를 return하도록 solution 함수를 완성해주세요.

제한사항

  • 1 ≤ s1, s2의 길이 ≤ 100
  • 1 ≤ s1, s2의 원소의 길이 ≤ 10
  • s1과 s2의 원소는 알파벳 소문자로만 이루어져 있습니다
  • s1과 s2는 각각 중복된 원소를 갖지 않습니다.

입출력 예시

  • "b"와 "c"가 같으므로 2를 return합니다. 
  • 같은 원소가 없으므로 0을 return합니다.

풀이

using System;
using System.Linq;

public class Solution {
    public int solution(string[] s1, string[] s2) {
        //Count 는 개수를 세는 메서드
        //s1 배열의 요소가 s2 배열에 포함되어 있다면 해당 개수를 반환
        int count = s1.Count(x => s2.Contains(x));
        return count;
    }
}

 

  • 정답률 높은 순부터 풀이
  • 매일 3 문항 풀이
반응형