본문 바로가기
개발공간

C# Sales by Match [HackerRank]

by -0o0- 2021. 9. 10.

C# Sales by Match [HackerRank]

using System.CodeDom.Compiler;
using System.Collections.Generic;
using System.Collections;
using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.Serialization;
using System.Text.RegularExpressions;
using System.Text;
using System;

class Result
{
    public static int sockMerchant(int n, List<int> ar)
    {
        //리스트 가장 큰 수 만큼 배열 생성
        int[] arr = new int[ar.Max()];
        
        //해당 배열에 리스트 카운트
        for(int i=0; i<ar.Count; i++)
        {
            arr[ar[i]-1]++;
        }
        
        int count = 0;
        
        //배열 크기만큼 반복
        for(int i=0; i<arr.Length; i++)
        {
            //배열당 개수가 1개 즉, 한 쌍 이하가 될때 까지 만복
            while(arr[i]>1)
            {
                //카운트 더하고 한 쌍의 개수 2 빼기
                count++;
                arr[i] = arr[i] - 2;    
            }
        }
        return count;
    }

}

class Solution
{
    public static void Main(string[] args)
    {
        TextWriter textWriter = new StreamWriter(@System.Environment.GetEnvironmentVariable("OUTPUT_PATH"), true);

        int n = Convert.ToInt32(Console.ReadLine().Trim());

        List<int> ar = Console.ReadLine().TrimEnd().Split(' ').ToList().Select(arTemp => Convert.ToInt32(arTemp)).ToList();

        int result = Result.sockMerchant(n, ar);

        textWriter.WriteLine(result);

        textWriter.Flush();
        textWriter.Close();
    }
}

'개발공간' 카테고리의 다른 글

C# Counting Valleys [HackerRank]  (0) 2021.09.11
C# Drawing Book [HackerRank]  (0) 2021.09.11
C# Bill Division [HackerRank]  (0) 2021.09.10
C# Migratory Birds [HackerRank]  (0) 2021.09.09
C# Divisible Sum Pairs [HackerRank]  (0) 2021.09.09

댓글