문제 <- 클릭 이런 스타일의 문제에 약하다 생각 했는데 역시 힘들다.. 풀긴 했으나 시간 제한에 자꾸 걸린다 그것도 턱없이.. 시험 몇일 남지도 않았는데 왠지 이런 스타일의 문제가 나올꺼 같아 불안 하다.. 어쨋든 아직 미완.. #include #include #include //class FieldOld{ // typedef std::pair POS; // std::vector stack; // int fieldSize; //public: // FieldOld(int size):fieldSize(size){} // //…
Tag Archives: 알고리즘
Programming Challenges – 동맹 휴업 (Hartal)
문제 <- 클릭 간단하다. 왜 레벨 2인지 모르겠고 왜 자료구조문제로 분류되어 있는지 잘 모르겠다. 의도한 방법으로 푼게 아닐지도..;. #include #include class PoliticalParty { //정당 int hartalParameter; //휴업지수 public: PoliticalParty(int _hartalParameter) { hartalParameter = _hartalParameter; } bool isHartal(int day) { if ((day % 7 == 0) || (day % 7 == 6)) return false; if (day…
Programming Challenges – 포커 패 (Poker Hands)
문제 <- 클릭 별로 어렵진 않은데 시간이 많이 걸리는 예제 였다. 입출력이 까답롭지 않아서 인지 금방 성공 하긴 했지만 시간 날때 좀더 다듬고 싶다. #include #include #include #include #include #include struct _Card { int pattern; int value; bool operator==(const _Card& rhs) { return (*this).value == rhs.value; } }; typedef struct _Card Card; typedef std::vector CardSet;…
Programming Challenges – 유쾌한 점퍼(Jolly Jumpers)
문제 <- 클릭 결과에 Not jolly를 Not Jolly로 출력 한거 모르고 몇시간 낭비…. 쉽다. #include #include #include #include #include int main() { std::string buffer; int numbers, current, before; bool jolly; while (true) { jolly = true; std::getline(std::cin, buffer); if (!buffer.length()) break; std::istringstream iss(buffer); iss >> numbers; std::deque checkArr(numbers); // checkArr.insert(checkArr.begin(),checkArr.size(),false); //기본적으로 false인듯 iss >> before;…
Programming Challenges – 호주식 투표법(Australian Voting)
문제 <- 클릭 아.. 이건 또 뭐가 문제지…? 체스 문제 처럼 나중에 다시보면 또 눈에 보이겠지. 시간 낭비는 하지말자.. 바쁘다! #include #include #include #include typedef std::vector Numbers; class AustralianVoting { std::vector candidates; std::vector persons; std::vector votes; std::vector eliminated; bool checkMoreVotes() { int max = 0; std::vector::iterator it; for (it = votes.begin(); it != votes.end(); ++it)…
Programming Challenges – 체크 확인 (Check the Check)
문제 <- 클릭 쉬운 문제인데 뭘 잘못한건지 채점이 안된다. 직접 테스트 하기에는 다 되는데 뭐가 문제인지.. 음.. 왠지 또 사소한 문제일것 같아 일단 올려두고 다음에 깨끗한 정신으로 살펴봐야겠다. (수정) 성공 했다…. if (0 <= x && x < 8 && 0 <= y && y < 8) 이부분 범위를 잘못 적었다. 이런 멍청한 실수를 하다니…
Programming Challenges – 인터프리터(Interpreter)
문제 <- 클릭 와우~ 이거 재미 있는데 ㅎㅎㅎ 레벨은 2인데 크게 어렵지는 않은듯.. 작동은 잘 되는데 출력 형태가 맘에 안든다고 로봇님이 그래서 출력 부분은 책을 좀 참고 ㅎㅎ #include #include using namespace std; class Memory { private: int val; public: Memory() : val(0) { } int getVal() { return val; } void getArg(int * arg)…
Programming Challenges – LCD Display(LCD 디스플레이)
문제 <- 클릭 쉽고 재미 있는 문제다. 다른 문제와 다르게 한번에 성공. 책의 풀이보다 내가 한 방식이 왠지 마음에 든다. #include #include using namespace std; void printLine(int fontSize) { putchar(‘ ‘); for (int i = 0; i < fontSize; ++i) putchar('-'); putchar(' '); } void printEmpty(int fontSize) { for (int i = 0; i <...
Programming Challenges – 여행 (The Trip)
문제 <- 클릭 하면 할수록 채점 로봇이 몹시 까다롭다는것을 느낀다. 퀵정렬.. 이론상으로는 알고 있지만 직접 구현하니까 역시 효율적으로 하는것이 만만치 않다. 결국 위키 백과에 있는것을 참고 했다. 사실 제공 되는 함수를 쓰면 되지만 그래도 공부니까.. #include #include #define MAX_STUDENT 1000 using namespace std; void qSort(int* arr, int left, int right) { //기본 제공 되지만… 공부를…
Programming Challenges – 지뢰찾기 (Minesweeper)
문제 <- 클릭 재미있다.! 하지만 채점 로봇이 너무… 공백 줄 하나 때문에 걸고 넘어져서 실망이다. #include #define MAX 100 int main() { char field[MAX + 1][MAX + 1]; long row, col; int fieldNumber = 1; while (scanf(“%ld %ld”, &col, &row) == 2) { if (col == 0 && row == 0) //0 0이면 종료 break;…