728x90
https://school.programmers.co.kr/learn/courses/30/lessons/150370
개인정보 수집 유효기간2023 KAKAO BLIND RECRUITMENT Level 1 C#
using System;
using System.Collections.Generic;
public class Solution {
public int[] solution(string today, string[] terms, string[] privacies) {
int n = 0;
List<int> answers = new List<int>();
string[] test = today.Split('.'); //년, 월, 일 들어가있음
string[,] termsSplit = new string[terms.Length, 2];
for (int i =0; i < terms.Length; i++){
string[] example = terms[i].Split(' ');
termsSplit[i, 0] = example[0];
termsSplit[i, 1] = example[1];
}
for (int i = 0; i < privacies.Length; i++)
{
string[] privacy = privacies[i].Split(' ');
string[] date = privacy[0].Split('.');
for (int j = 0; j < terms.Length; j++){
if (termsSplit[j, 0] == privacy[1] ) //적합한 종류를 찾았다면
{
int Year = int.Parse(date[0]);
int Month = int.Parse(date[1]) + int.Parse(termsSplit[j, 1]);
int Date = int.Parse(date[2]) -1;
if (Month > 12){
Year += Month / 12;
Month %= 12;
}
if (Month == 0){
Month = 12;
Year -=1;
}
if (Date == 0){
Date = 28;
Month -=1;
}
string[] todaySplit = today.Split('.');
if (int.Parse(todaySplit[0]) > Year || (int.Parse(todaySplit[0]) == Year && int.Parse(todaySplit[1]) > Month) || (int.Parse(todaySplit[0]) == Year && int.Parse(todaySplit[1]) == Month && int.Parse(todaySplit[2]) > Date)) {
answers.Add(i+1);
}
}
}
}
int[] answer = new int[answers.Count];
for ( int i =0; i < answers.Count; i++){
answer[i] = answers[i];
}
return answer;
}
}
Split과 int.Parse 등을 이용해 풀었다.
728x90
'공부 > C#' 카테고리의 다른 글
냠냠 (0) | 2023.08.07 |
---|---|
[프로그래머스] C# 2023 KAKAO BLIND RECRUITMENT 이모티콘 할인행사 Lv 2 / DFS (0) | 2023.08.05 |
[Unity] 커비 마무리! (0) | 2023.04.25 |
다익스트라 알고리즘 (0) | 2023.04.09 |
[C#] 콘솔창의 키보드 입력 필요할때만 받아서 처리하기 (0) | 2023.03.31 |