#include <iostream>
#include <string>
#include <vector>
using namespace std;
enum RPS
{
rock,
paper,
scissors,
rps_count,
};
std::string rps_strings[]{ "바위", "보", "가위" };
enum PLAYER_RACE
{
computer,
human,
};
class PLAYER;
std::vector< PLAYER* > players;
class PLAYER
{
private:
virtual RPS make_answer() = 0;
std::string name;
RPS answer;
public:
PLAYER( const std::string name ) : name( name )
{
players.emplace_back( this );
}
auto get_name() const
{
return name;
}
RPS run()
{
return answer = make_answer();
}
RPS last_answer() const
{
return answer;
}
};
class COMPUTER : PLAYER
{
private:
static int counter;
virtual RPS make_answer()
{
return RPS( rand() % rps_count );
}
public:
COMPUTER() : PLAYER( std::string( "COMPUTER_" ) + std::to_string( ++counter ) ) {}
};
class HUMAN : PLAYER
{
private:
static int counter;
virtual RPS make_answer()
{
int answer;
std::cout << get_name() << " 's turn ( 0 = 바위, 1 = 보, 2 = 가위 ) :";
std::cin >> answer;
return RPS( answer );
}
public:
HUMAN() : PLAYER( std::string( "HUMAN_" ) + std::to_string( ++counter ) ) {}
};
int COMPUTER::counter = 0;
int HUMAN::counter = 0;
int main()
{
int computer_count;
cout << "How many computers? ";
cin >> computer_count;
int human_count;
cout << "How many humans? ";
cin >> human_count;
for( int i = 0; i < computer_count; ++i )
new COMPUTER;
for( int i = 0; i < human_count; ++i )
new HUMAN;
while( players.size() > 1 )
{
int total[ rps_count ] { 0 };
for( const auto player : players )
{
total[ player->run() ]++;
cout << player->get_name() << " : " <<
rps_strings[ player->last_answer() ] << endl;
}
if( total[ 0 ] && total[ 1 ] && total[ 2 ] )
continue;
for( auto it = players.begin(); it != players.end(); )
{
if( total[ ( (*it)->last_answer() + 1 ) % rps_count ] )
{
cout << (*it)->get_name() << " lose" << endl;
delete *it;
it = players.erase( it );
}
else ++it;
}
cout << endl;
}
cout << players[ 0 ]->get_name() << " win" << endl;
delete players[ 0 ];
return 0;
}
How many computers? 3
How many humans? 0
COMPUTER_1 : 보
COMPUTER_2 : 보
COMPUTER_3 : 바위
COMPUTER_3 lose
COMPUTER_1 : 보
COMPUTER_2 : 가위
COMPUTER_1 lose
COMPUTER_2 win
니가 가서 답 달라고요? 이 시간이면 벌써 몇 번 풀어줬겠다?
ㅋㅋㅋㅋㅋㅋㅋ
확장성 같은 소리하네 전역변수 컨테이너에다가 직접때려박는게 확장성이 좋은건가?
리팩토링 하는 비용 계산 안되나 보지?
대충 하나로 박아놓은것도 적은 손품이면 리팩토링 가능하게 작성해 둔건데?
ㅋㄷㅋㄷㅋㄷ
한마디로 자기과시 용인것 같음 세미콜론도 못찍는 초보한테;;
동어반복밖에 못하는 수준~
초보 중에도 이정도 코드 읽을 수 있는 애들 많음유~ 하루 투자하면 다 읽겠다. ㅉㅉ
아니 자기 과시 하면 어떠냐? 무슨 디시 프로그래밍 갤러리가 온라인 1:1 학습 서비스야? 잘하는 사람은 자기 과시해서 자위하는 거고 못하는 사람은 그거 줏어먹고 자기 문제 해결 할 수 있으면 하는거지
욕망의 돼지새끼들아! >0<
아니 부모 생성자에다가 전역변수 컨테이너에 때력박는걸 리팩토링 고려해서 작성했다고? 헛소리 좀 적당히 하시길
네 열심히 코드 싸면서 다니세요~
타인에게 도움을 주려기보다는 자기 과시하면 어떠냐는 식의 논리라면 악플 달고 시비 걸면 어떠냐? 본인 맘에 안 드는 댓글이면 안 읽으면 되는거네 낄낄
ㅋㅋㅋㅋㅋㅋㅋㅋㅋ 네 다음 부모 생성자 다룰줄 모르는분~
자기 과시 딸치는 코드를 읽고 문제를 해결할 수 있지만 악플달고 시비걸면 해결되는 문제가 뭐냐
클래스 알못들이 왜 설치지? ㅡ,.ㅡ
ㅋㅋ 유동성님 진짜 전형적인 조선인새끼인듯. 이런새끼들땜에 스택오버플로같은 분위기는 절대 나올 수 없음. 모범답안 아니면 비속어가 튀어나오시는ㅋㅋ 심지어 상대의 수준까지 고려해서 코드올리지 말라고까지함
왜 논리적으로 더 반박은 안하고 쳐웃기만 하시는지?
아주 도덕책에 나오는 성인군자 칸트같은 새끼들아
얌마 VCL 이고 .Net 이고 내부 소스에 부모 생성자에서 자식들 추가 한다. ㅉㅉ 코드 본적도 없지?
논리적으로 반박했는데? ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
이 샛기들 component 만들어봤어야 저걸 알지.
그걸 전역 변수 컨테이너에다가 때려박는 코드가 있다고? 어디 그 코드 좀 봅시다? 어디서 썼는지 알려주시죠?
모듈 정리 레벨이 아니니까유~? 요구사항을 넓혀가는건 스탭바이스탭이야 임마. 제대로 컨테이너 만들면 그걸로도 소스코드가 저만큼임.
아예 컨테이너를 따로 정의하지 않았으니까 당연히 코드에 박아 넣는거지. 컨테이너 따로 만들면 생성자 파라메터에 넣고 그거 받아 추가하고 땡이지
추가 되는만큼 + C 기본 상수 처리 작업 만큼 변경점이 있으면 되는데 당연히 리팩토링 고려된 코드지 ㅉㅉ
본인 수준을 고려하지 않고 잘난 체 하려고 준 코드가 어떻게 문제 해결에 도움이 될 수 있다고 생각하는지? 나쁜 짓을 하는 놈도 문제지만 잘못된 것을 옹호하는 놈들도 문제. ㅉㅉ
전역 vector 가 컨테이너 대용품이란게 눈에 안보이면 그냥 마 헛소리 집어치고 잠이나 자. 일요일에~
하하 무슨 어렵게라도 짠 코드면 내가 말을 안해. 저거 기본서 수준에서 검색되는 코드야 ㅡㅡㅋ
도덕책에 나오는 성인군자? ㅋㅋㅋㅋ 잘난 체 하면서 인격모독적인 리플 주고 받으면서 싸우는 게 하루 이틀도 아니고 마치 피해자인 것처럼 지껄이네 ㅋㅋㅋㅋㅋ 반대로 말하면 디시니까 악플 달 수도 있는건데 성인군자를 바라는 게 이상한거라고 할 수도 있는데? ㅋㅋㅋㅋㅋㅋ
그냥 단순하게 메인쪽 루프에 넣으면 되는걸 일부러 꼬아 놓은것으로 밖에 안보이는데? 그것도 초보 대상 훈수용 코드에서 말이죠?
왜 니한테 존나 어려웠니? ㅋㅋㅋ
어려웠던게로구나. 토닥토닥. 울지마~
너도 열심히 하면 하루만에 이해할 수 있어~
이런짓꺼리 안하면 말이지~
어떤 느낌이냐면 초등학교에서 어떤 학생이 수학문제 풀이가 안되서 질문을 했는데 선생님이 칠판에 풀이만 적어놓고 그냥 나가버리는거임 이게 남이 보기에 옹호 할만한 행동일까 물론 알려줄 의무가 있는건 아니지만 자기가 알려준다고 글
stackoverflow 이야기하는 새기는 제 정신인가? 왜 디시를 stackoverflow로 만들려고 하나 디시는 디시인데 ㅋㅋㅋ 실력 되면 지가 stackoverflow 가면 되지. ㅋㅋㅋㅋ stackoverflow 가면 서양 성님들한테 후장 털릴까봐 못 가고 디시에서 학생, 초보 개발자 앞에서 왕노릇 하려는거겠지 ㅋㅋㅋㅋ
그럼 쟤한테 스택오버플로우 안내해주렴?
싸놓은 데다가 제대로 알려주지도 않고 남들이 느끼기에 아니꼽게 느껴지는건 사실
이건 내스탈이야. 니가 뭐라 할게 아냐. 니가 답글이나 달아주던가? 너 지금 뭐하고 있지?
모르면 어디 어디 모른다 이야기 하면 댓글 다 달아주지. 바보야. ㅋㅋ
몇 줄된다고 우는 소리냐 저코드.
능력 되면 stackoverflow로 쳐가세요 디시에서 잘난 체 하지 마시고 ㅋㅋㅋㅋ
내 맘입니다?
아니 그게 아니고 코드 올리는 사람이 그거 보는 사람을 그렇게까지 생각해서 코드를 짜겠냐고, 그냥 씨발 짜는거지 찍찍 탁 . 바랄걸 바래라 이말이다. 애초에 해결한다고 돈도 안나오고 뭐가 되는 것도 딱히 없는 남의 문제에 관심 가져주는 거 부터가..
물론 자기한테 딱 맞는 답을 원하신다면 이런 똥통에서 놀지 마시고 스택오버플로우에 영어로 질문을 올리시기 바랍니다. 거기서는 질문에 답해주면 업보트를 받거든요!
끌끌. 이 쓰레드에서 몇 명 털었는지 세 보면 재밌을듯 : )
ㅊㄹ 이 새기 후빨하는 거 봐라 후장 다 헐겠네 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 쥽쥽 잘 빠네 ㅋㅋㅋ
멘붕중? 이젠 논리도 없고 뭐~
난 코세를 빠는게 아니라.... 코세가 아니고 다른 사람이 코드를 올려도 이 지랄 해대면 프갤에 그나마 코드를 올릴 사람이 남아나나?? 남의 문제에 관심을 가져주는 사람들이 있을까?
솔직히 난 갤에서 도움을 주는 사람들이 떠나가는게 싫다. 전에 쿠컄캬도 말은 안 했지만 도움 많이 받았는데 떠나서 아쉬웠슴. 유동으로라도 활동했으면 좋겠다.
이게 무슨 궤변이냐? kukyakya가 떠난 결정적인 이유가 코세인데 ㅋ
그 이유는 스스로지. 좋게 타이를 때 바른 말을 들었어야지.
코세라서 빠는 게 아니니까 코세를 빠는 게 아니라는 것은 궤변이고 코세가 잘못된 행동을 했는데도 불구하고 알량한 코드 올린답시고 코세 편을 드는 게 코세 빠는거지 뭐가 코세 빠는거겠냐?
잘못된 행동 한게 아니니까 그렇지? ㅋㄷㅋㄷ
쟤는 내 말을 이해를 못하는 거 같다... 그냥 글을 좀 그대로 읽어. 그렇게 편을 가르고 싶은지
존나 그게 중요한게 아니라니까...
ㅊㄹ 너같은 쓰레기들이 있으니까 다른 사람 실수한 거 꼬투리 잡아서 인격모독적인 발언하는 게 잘못된 게 아니라고 우기면서 ㅋㄷㅋㄷ 쳐웃을 수 있는거야 참 잘했어요 친구 없는 새기 ㅋㅋㅋ
정신 나간 애들 많잖아 걍 무시해 ㅊㄹ양~
편은 니가 가르고 있는거야 ㅊㄹ야
대화를 하고 싶은게 아니야 쟤들은 ㅋㅋ 프로그래밍 이야기하고픈것도 아니고.
자기가 병신인데 왜 남들은 병신이 아니냐고 울먹울먹 하는 애들이지.
연민을 갖고 글삭해주면 된다. ㅋㅋㅋ
프로그래밍 이야기가 하고 싶은 게 아니다? 근거는 코세를 까니까? 그렇게 프로그래밍을 사랑하시는데 왜 kldp, 스택오버플로는 못 가실까? 거기서도 여기처럼 상대방 실수하면 꼬투리 잡아서 막말하면서 우월의식 만끽하면 영구 밴, 고소, 현피 당할까봐 후달리냐? ㅋㅋㅋ
귀찮아서 안가는건데? ㅋㅋㅋ
너야말로 정상적인 프로그래밍 이야기를 하고 싶은게 아니지 잘난 체 하면서 니 후빨해주는 애완견이 필요한거지 ㅋㅋㅋ
왜 KLDP 가 그리 좋으면 너나 가시지? ㅋㅋㅋㅋ
니가 프로그래밍 이야기 한 글 들고와 볼래?
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
디시에서 하루 종일 악플 달고 부들부들 거리면서 싸울 시간은 있지만 스택, kldp 살 시간은 없다? ㅋㅋㅋ
뭐하러? 다른 커뮤니티도 많이 했는데? 디씨야 조카땜에 하게 된거고~
니가 여기서 한 것처럼 kldp, 스택오버플로 가서 한 번 해 볼래?
니가 남의 사연에 관여해서 뭐하게? ㅋㅋㅋㅋ
ㅋㅋㅋㅋㅋㅋㅋ
내 맘이라니깐. 니 글부터 들고와 어디서 되도않은 훈장질이여?
ㅋㅋㅋㅋㅋ
내가 불리한 건 니 마음이다? ㅋㅋㅋㅋ
어, 내 의사결정권은 내게 있지 니게 있니?
결국 kldp, 스택오버플로 가서 프갤에서 한 것처럼 할 자신 없다는 말은 자신의 행동이 떳떳하지 못하다는 거 인정하는거네 ㅋㅋㅋㅋ
니 글 갖고와보라고 ㅋㅋㅋ 프로그래밍 이야기 하려는게 아닌건 너라는걸 내가 증명했잖아? ㅋㅋㅋㅋㅋㅋ
그러니까 니가 정말 남을 돕고 싶어서 그런거면 kldp, 스택오버플로 가서 프갤에서 한 것처럼 지껄이면 되겠네? 내가 증명했잖아 ㅋㅋㅋㅋㅋㅋ
내가 하고픈대로 노는데 떳떳하고 아니고가 뭔 필요? 웃기네 저 녀석 ㅋㅋ
너 부터 증명하고 훈계하라고.
잘난 체 하면서 남 무시하고 가끔 피자 쏘면서 거들먹 거리고 싶으세요? ㅋㄷㅋㄷ
왜 남보고 이래라 저래라여 프로그래밍도 모르는게 ㅋㅋㅋ
아 그래 울지말고 이야기 해 피자 사달라고?
니가 하고 싶은대로 놀면 되지만 나는 내가 하고 싶은대로 하면 안 된다? ㅋㅋㅋ
조또 허접인데 피자는 먹고 싶고 그런거니?
증명 충분히 하고도 넘쳤지.~ 3년 동안 갤에서 글 한 두개 썼니 ㅋㅋㅋㅋ
아닝~ 나야 공부하는 동생들 응원하는거지~
말같지도 않아~ 말은 쉽지 코드 내놔~
==========위엣 닉넴은 오늘 사망하신분들 명단입니다=========
ㅇ//되서->돼서 [리듬 맞춤법 봇♬]
난 변수명이 왤케 웃기지 ㅋㅋㅋㅋㅋㅋ rocks papers sessors ㅋㅋㅋㅋㅋㅋㅋㅋ
scissors
변수명이 아니고 열거형 상수명이지. 그게 영어로 가위 바위 보니까.
유동평가단 : 유동닉 ㅇㅇ 개졸렬한 멍청이
디씨 오늘 가입했는데 다들 수준떨어지네