"감도 3000배 문제"를 풀어 보았다
트위터에서 본 이 문제가 경기 프로그래밍적(AtCoder의 300점 문제 정도)이라고 느꼈기 때문에 c++로 풀어 보았다.
using namespace std;
int main(int argc, char *argv[])
{
//init
string orc = "ABCDE";
sort(orc.begin(), orc.end());
//calc
while (next_permutation(orc.begin(), orc.end())){
int kando = 0;
for (size_t i = 0; i < orc.length(); i++){
char drug = orc[i];
switch (drug){
case 'A':
kando /= 2;
break;
case 'B':
kando -= 900;
break;
case 'C':
kando += 2000;
break;
case 'D':
kando *= 5;
break;
case 'E':
kando += 500;
break;
}
}
if (kando == 3000){
cout << orc << endl;
}
}
return 0;
}
Reference
이 문제에 관하여("감도 3000배 문제"를 풀어 보았다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hiroshi_tamura_minordaimyo/items/dcb8033bf5e41cd91eda텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)