Notice
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- nav오브젝트사이거리
- networkobject.networkid
- navigation
- 오브젝트 깜빡임
- 유니티
- 유니티 해상도
- 몬스터
- m585
- m585 수리
- nav거리
- 유니티 해상도 변경
- M590
- NavMesh
- 유니티 브랜치 merge
- 유니티 합치기
- networkbehaviourid
- Github DeskTop Merge
- m590 수리
- unity 병합
- Unity
- 유니티 머지
- stateauthority
- unity git
- githubdesktopmerge
- unity merge
- 유니티 해상도 설정
- 깃허브 데스크탑 병합
- 깃허브 데스크탑 합치기
- networkobject
Archives
- Today
- Total
집게사장의 꿈
백준 C# 1655 가운데를 말해요 본문
문제
0.1 초 내에 주어진 수를 정렬해서 중앙값을 출력하는 것
해결
이분 정렬을 통해 시간을 맞춤
입출력 시간을 줄이기 위해
StreamReader과 StreamBuilder를 사용
internal class E1655__가운데를말해요
{
static void Main(string[] args)
{
int N(StreamReader r) => int.Parse(r.ReadLine());
using (StreamReader reader = new StreamReader(Console.OpenStandardInput()))
{
int iter = N(reader);
List<int> list = new List<int>();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < iter; i++)
{
int n = N(reader);
int left = 0;
int right = list.Count;
//이분 정렬
while(left < right)
{
int mid = (left + right) / 2;
if (n>list[mid])
{
left =mid+1;
}
else
{
right = mid;
}
}
list.Insert(left, n);
sb.Append(list[(list.Count - 1) / 2]);
sb.AppendLine();
}
using (StreamWriter sw = new StreamWriter(Console.OpenStandardOutput()))
sw.WriteLine(sb);
}
}
}
'기타 > 백준' 카테고리의 다른 글
백준 C# 16928 뱀과 사다리 게임 (0) | 2024.08.04 |
---|---|
백준 C# 10026 적록색약 (0) | 2024.08.01 |
백준 C# 7576 토마토 2차원 (0) | 2024.07.31 |
백준 C# 7569 토마토 3차원 (0) | 2024.07.31 |
백준 C# 5430 AC (0) | 2024.07.30 |