0부터 9999까지 8을 포함하지 않는 수는 총 몇개일까?
8, 108, 888, 9998 등은 8을 포함하고 있는 수입니다. 111, 299, 4 등과 같은 수는 8을 포함하지 않는 수 입니다.
숫자를 문자열로 취급해 8을 포함하는지 검사하는 방식이 아니라 숫자 형태로 검사하는 방식입니다. 일의 자리에 8이 있는지 검사하고 완료되면 일의 자리를 제거하고 그 다음(십의 자리를 검사했으면 백의 자리) 자리를 검사하는 방식입니다.
void _Test2()
{
string result = "";
for (int i = 0; i < 10000; ++i)
{
int n1 = i % 10;
if (n1 == 8)
{
result += i + ", ";
continue;
}
int n2 = i / 10;
n2 = n2 % 10;
if (n2 == 8)
{
result += i + ", ";
continue;
}
int n3 = i / 100;
n3 = n3 % 10;
if (n3 == 8)
{
result += i + ", ";
continue;
}
int n4 = i / 1000;
//n4 = n4 % 10;
if (n4 == 8)
{
result += i + ", ";
continue;
}
//if (s.Contains("8") == true)
// result += s + ", ";
}
Debug.Log(result);
}
2022年11月04日 15:59
풀이 작성