반응형
[ 문제 ]
8진수가 주어졌을 때, 2진수로 변환하는 프로그램을 작성하시오.
[ 코드 ]
using System.Text;
StreamReader sr = new StreamReader(new BufferedStream(Console.OpenStandardInput()));
StreamWriter sw = new StreamWriter(new BufferedStream(Console.OpenStandardOutput()));
StringBuilder sb = new StringBuilder();
string n = sr.ReadLine();
string[] arr = { "000", "001", "010", "011", "100", "101", "110", "111" };
if(n == "0")
{
sb.Append(0);
sw.Write(sb);
}
else
{
foreach (char digit in n)
{
int i = int.Parse(digit.ToString());
sb.Append(arr[i]);
}
sw.Write(sb.ToString().TrimStart('0'));
}
sw.Flush();
sw.Close();
sr.Close();
- BigInteger로 변환을 해봐도 잘 되지않았다.. 그래서 그냥 배열로 저장해서 인덱스값을 누적 저장해서 출력시키게 했다.
- 비슷하지만 반대인 문제는 밑에 올려놨다.
https://milkyquartz.tistory.com/115
[ 실행화면 ]
문제링크: https://www.acmicpc.net/problem/1212
반응형
'Language > C#' 카테고리의 다른 글
[C#] 백준 1252번 이진수 덧셈 (1) | 2024.02.29 |
---|---|
[C#] 백준 1373번 2진수 8진수 (0) | 2024.02.28 |
[C#] 백준 1159번 농구 경기 (0) | 2024.02.28 |
[C#] 백준 1076번 저항 (0) | 2024.02.27 |
[C#] 백준 1009번 분산처리 (0) | 2024.02.27 |