์ด ํฌ์คํ
์ ์ฟ ํก ํํธ๋์ค ํ๋์ ์ผํ์ผ๋ก, ์ด์ ๋ฐ๋ฅธ ์ผ์ ์ก์ ์์๋ฃ๋ฅผ ์ ๊ณต๋ฐ์ ์ ์์ต๋๋ค.
๊ฐ์๊ธฐ ICPCํํ๊ฐ ์๊ฐ์ด ๋์ ํํ ํํผ๋ฅผ ๋ค๋ ๋ค.
๊ทธ ๋์ ํ์ ๋ค๋๋ฉด์ ๋ด ์ค๋ ฅ์ด ์ผ๋ง๋ ํฅ์์ด ๋์๋.. ์ ๊ฒ๋ ํ ๊ฒธ...
์ฌ์ค ํ์์์๋ ๊ฒ์ํ๋ก๊ทธ๋๋ฐ์ด๋ผ ์ํ์ ์ธ ์๊ฐ๋ ๋ง์ด ํด์ผํ๊ธด ํ์ง๋ง,
๋ฌธ์ ํด๊ฒฐํ๋๋ฐ ์์ด์ Uva๋ฌธ์ ๊ฐ ์ข ๋ ์งง์์๊ฐ์ ๊ณ ์์ค์ ๋ฌธ์ ํด๊ฒฐ๋ฅ๋ ฅ์ ์๊ตฌํ๋ ํธ์ด๋ผ๊ณ ์๊ฐํ๋ค.
์ ๋ฌธ์ ๋ฅผ ํ๊ฒ๋์๋ค.
10019 - Funny Encryption Method 6366 69.82% 4108 94.94%
http://icpcres.ecs.baylor.edu/onlinejudge/index.php?option=com_onlinejudge&Itemid=8&category=12&page=show_problem&problem=960
ํ ....
์ ๋ง์ด์ง...
์ ๊ธฐํ๋ค... ๋ญ๊ฐ?
๊ทธ๋ฅ ์๊ฐ๋๋๋๋ก ์ฝ๋ฉ์ด ๋น ๋ฅด๊ฒ๋์๋ค. ์์ ๊ฐ์์ผ๋ฉด ๋ฌธ์ ํด๊ฒฐ๋ฐฉ๋ฒ์ด ๋จธ๋ฆฟ์์ ๋งด๋์๋ ์ฝ๋ฉ์ ๋ชปํด์ ํ์ง ๋ชปํ์ ์ด ๋ง์๋๋ฐ...
๊ทผ๋ฐ Submit ํ ๋ mainํจ์๋ฅผ int main(void) {return 0;} ์์ผ๋ก ์ง์ค์ผ์ง ๋ฌธ์ ์ ์ถ์ ์๋ฌ๊ฐ ์๋๋๋ฐ,
๊ทธ๊ฑธ ๊น๋นกํ๊ณ void main(void)๋ก ์ ์ถ์ ํด์ ์ด์ ๋ชจ๋ฅผ ํด์ง๋ฅผ ๋ง์ด ๋ง์ ๋ถ๋
ธํ๊ณ ์์๋ค.. ๋ฉ์ฒญํ๊ธด... ;;
์๋ฌดํผ...์ค๋ ฅ์ด ๋๊ฑด ํ์คํ๊ฑฐ ๊ฐ๋ค.(๋ฌธ์ ํด๊ฒฐ๋ฅ๋ ฅ์ด ์๋๋ผ ๋จ์ํ ์ฝ๋ฉ์ค๋ ฅ์ด ๋๊ฑด๊ฐ....);;;;
10์ง์ 265๋ฅผ 16์ง์ 265๋ก ์ธ์ํ๊ฒ ํ ๋ ค๊ณ ๊ณ ๋ฏผ์ ํ๋ค๊ฐ
๊ทธ๋ฅ 256์ ๋ฌธ์์ด๋ก ๋ฐ๊พผ๋ค์ 0x๋ฅผ ์ผ์ชฝ์ ๋ถ์ด๊ณ ๊ทธ๊ฑธ ๋ค์
10์ง์๋ก ๋ฐ๊พธ๋ ์์ผ๋ก ํด๋ฒ๋ ธ๋ค.^^
์๋๋ ๋ฌธ์ ํผ ์ฝ๋๋ค.
#include <iostream> #include <stdlib.h>
using namespace std;
int DecimalToBinary(int nData); //10์ง์๋ฅผ ์ด์ง์๋ก๋ณํํ 1๊ฐฏ์๋ฅผ ์นด์ดํ
ํ ๋ฆฌํด int HexaDecimalToBinary(int nData); //10์ง์๋ฅผ ์
๋ ฅ๋ฐ์ 16์ง์๋ฌธ์์ด๋ก๋ณํํ์ฌ DemicalToBinary()ํธ์ถ
int main(void) {
int nNumberOfData; //๋ช๊ฐ๋ฅผ ๋ฐ์๊น? int *nData; //๊ฐฏ์๋งํผ ๋ฐ์ดํฐ๋ณ์์์ฑ int i; //Loop์ฉ
//๋ช๊ฐ? cin >> nNumberOfData;
nData = new int[nNumberOfData]; //์
๋ ฅ๋ฐ์ ๊ฐฏ์๋งํผ intํ ์์ฑ
//๊ฐฏ์๋งํผ ๋ฐ์ดํฐ๋ฅผ ์
๋ ฅ๋ฐ์ for(i = 0; i < nNumberOfData ; i++) { cin >> nData[i]; }
//์ถ๋ ฅ for(i = 0; i < nNumberOfData ; i++) { cout << DecimalToBinary(nData[i]) << " " << HexaDecimalToBinary(nData[i]) <<endl; }
delete [] nData; //๋ฉ๋ชจ๋ฆฌํด์
return 0;
}
//10์ง์๋ฅผ ์
๋ ฅ๋ฐ์ 2์ง์๋ก ๋ณํํ 1๋ง ์นด์ดํ
ํ์ฌ ๋ฆฌํด int DecimalToBinary(int nData) {
int nCount = 0; while(true) { if(nData == 1) { nCount++; break; } //nData๋ฅผ 2๋ก๋๋์์๋ 1์ด๋์ค๋ฉด nCount๋ฅผ 1์ฆ๊ฐ if(nData % 2 == 1) { nCount++; } nData /= 2; //nData๋ฅผ 2๋ก๋๋ ๋ฒ๋ฆผ }
return nCount; }
//10์ง์๋ฅผ ์
๋ ฅ๋ฐ์ 16์ง์๋ฌธ์์ด๋ก๋ณํํ DemicalToBinary()ํธ์ถ int HexaDecimalToBinary(int nData) { //16์ง์๋ฌธ์์ด๋ก ๋ฐ๊พผ๋ค์ ๋ค์ 10์ง์๋ก๋ณํํ์ฅ. char szBuf[16]; sprintf(szBuf,"0x%d",nData); nData = strtol(szBuf, NULL, 16);
return DecimalToBinary(nData); }
|