코딩테스트 입문 문제 풀이

강예찬
∙∙조회 2

정수 부분

문제 설명

실수 flo가 매개 변수로 주어질 때, flo의 정수 부분을 return하도록 solution 함수를 완성해주세요.

  1. 문제해석

실수에서 소수점 뒷자리를 버리고 정수 부분만 얻을 수 있게 함수를 완성한다.

  1. 문제해결 리스트화

정수형 변수 a를 하나 선언한다.

실수flo 앞에 괄호 int 를 붙여 정수형으로 반환한다.

  1. 작성한 소스코드
arduino
using System;

public class Solution 
{
    public int solution(double flo) 
    {
        
        int a;
        a = (int)flo;
        int answer = a;
        return answer;
    }

공배수

문제 설명

정수 number와 n, m이 주어집니다. number가 n의 배수이면서 m의 배수이면 1을 아니라면 0을 return하도록 solution 함수를 완성해주세요.

  1. 문제해석

정수 number 가 정수 n, m 의 공배수인지 아닌지 판별하는 문제다.

  1. 문제해결 리스트화

if문으로 정수 number 과 정수 n 을 나눈 나머지가 0이고, 정수 number 과 정수 m 을 나눈 나머지가 0이면 수 number 가 정수 n, m 의 공배수이므로 1을 반환한다.

if문으로 정수 number 과 정수 n 을 나눈 나머지가 0이 아니거나 number 과 정수 m 을 나눈 나머지가 0이 아닐 경우 number 가 정수 n, m 의 공배수가 아니므로 0을 반환한다.

  1. 작성한 소스코드
perl
using System;

    }
public class Solution 
{
    public int solution(int number, int n, int m) 
    {
        int answer;
        if(number % n == 0 && number % m == 0)
        {
            answer = 1;
        }
        if(number % n != 0 || number % m != 0)
        {
            answer = 0;
        }
        return answer;
    }
}

두 수의 연산값 비교하기

제 설명

연산 ⊕는 두 정수에 대한 연산으로 두 정수를 붙여서 쓴 값을 반환합니다. 예를 들면 다음과 같습니다.

  • 12 ⊕ 3 = 123
  • 3 ⊕ 12 = 312

양의 정수 a와 b가 주어졌을 때, a ⊕ b와 2 * a * b 중 더 큰 값을 return하는 solution 함수를 완성해 주세요.

단, a ⊕ b와 2 * a * b가 같으면 a ⊕ b를 return 합니다.

  1. 문제해석

양수 a와 b 를 순서대로 이은 값과 2**a* *b 중 큰 값을 고르는 문제다.

  1. 문제해결 리스트화

a ⊕ b를 문자열로 붙인 뒤 정수로 변환한다.

2 a b 연산한다.

두 값 비교 후 큰 값 반환하고 같을 경우 ab 반환한다.

  1. 작성한 소스코드
csharp
using System;

public class Solution 
{
    public int solution(int a, int b) 
    {
       
        int ab = int.Parse($"{a}{b}");
        
        
        int doubleAb = 2 * a * b;
        
        
        return ab >= doubleAb ? ab : doubleAb;
    }
}