문제 : 10진수 2진수 8진수 어느 진수의 형태든 대칭수인 수 찾기 문제 !!
숫자 N(대칭수)에 대해 10진수 2진수 8진수 3가지 형태를 전부 만족하는 숫자를 찾는 문제이다.
예 ) 앞에서 부터 부르던 뒤에서 부터 부르던 똑같은 "이효리"
12321 11011
문제해결: 1. 10진수 비교 리버싱 문자열
2. 10진수->2진수 비교 리버싱 문자열
3. 10진수->8진수 비교 리버싱 문자열
위 3가지 조건이 전부 참인경우의 수를 구하면 되는 문제이다 .
정답코드 :
using System;
namespace 콘솔앱
{
class 콘솔앱
{
public static string reverse_string(string a)
{
System.Text.StringBuilder test = new System.Text.StringBuilder();
char[] c = new char[a.Length];
string t=null;
for (int i = 0 ; i <a.Length; i++)
{
test.Append(a[a.Length - i - 1]);
}
return test.ToString();
}
static void Main(string[] args)
{
string a;
string b;
string c;
int temp = 0;
for (int i = 11; i < 10000; i += 2)
{
// 변수 i에 대하여 10진수, 8진수, 2진수를 문자열 형태로 구한다.
// C# 은 컨버트 클래스를 활용해 변환 할수있다.
// 첫번째 매개변수는 변환할값 이고 2번째 매개변수는 변환할 type이다.
a = i.ToString();
b = Convert.ToString(i,2);
c = Convert.ToString(i, 8);
if (a==reverse_string(a)&&b==reverse_string(b)&&c==reverse_string(c))
{
Console.WriteLine(i);
}
}
}
}
}
정답 : 585
'프로그래밍 > 알고리즘' 카테고리의 다른 글
이진수 값 구하기 (0) | 2022.07.09 |
---|---|
순열 N개의 문자열중 R개를 나열할 수 있는 경우를 모두 출력 (0) | 2022.07.04 |
백준 11098 첼시를 도와줘 (0) | 2021.11.20 |
백준 셀프넘버(4673) 문제 (0) | 2020.03.28 |
알고리즘 - 카드 뒤집기 (0) | 2020.03.09 |