본문 바로가기

For all category

Design Pattern & Network, 1. Introduction. 또 다시 새로 시작하는 시리즈물이 되는군요. 디자인패턴과 네트워크중 뭘 해야 하나... 고민하다가 잘 생각해보니깐 그냥 섞-_-어서 하는게 좋다는 생각이 들었답니다. ========================================================================================= 네트워크가 뭔진 다들 아시지요? 대략 요거 비슷하네요. -_-; WWW(월드 와이드 웹)이 저런 거미줄 같은거라고 하는 분들이 계실진 모르겠습니다만, WWW도 네트워크에 기반을 둔 모델이니까요. 같습니다. (우기는중 -_-) 사실 좀 다르긴 하다 해도... 그건 나중에 차차 설명하지요. -_-; 그런듸, 객체지향의 디자인패턴도 사실은 저런 거미줄같아요. 그러니 제가 두개 합쳐 쓸 생.. 더보기
UVa 324. Factorial Frequencies 채점큐에서 안나옴 -_- package uva324; import java.math.BigInteger; import java.util.*; public class Main { public static void main(String[] args) { int n, i; int[] data; BigInteger a; String temp; Scanner sc = new Scanner(System.in); data = new int[10]; while (sc.hasNextInt()) { n = sc.nextInt(); for (i = 0; i < 10; i++) { data[i] = 0; } if (n == 0) { break; } a = BigInteger.ONE; for (i = 1; i 더보기
핑계 과제가 홍수군요. 매 주마다 등차수열로 늘어나는듯한 이 기분.. 뭐지?.. 찜찜해.. 아악 살려줘 쉬고 싶어 . . . . . . 이것이 학교를 다닐때의 괴로움인가 (-) (학교 다닌지 3년만에 이걸 느끼다니 넌 바보냐) 결론은, 늦어서 죄송합니다 (--)(__)(--) 더보기
UVa 324. Factorial Frequencies 324 - Factorial FrequenciesTime limit: 3.000 seconds Factorial Frequencies 불 보듯 뻔히 보이는 사업의 하락세를 보강하기 위하여, Madam Pheonix는 그녀의 고객들에게 여러 종류의, 수를 이용한 점 서비스를 하기로 했습니다. 그녀는 십진수로 표현되는 팩토리얼의 각 자리에 있는 숫자들의 개수의 합이, 그들이 겪게 될 미래의 일들의 가짓수를 표현할 수 있다고 믿도록 만들었습니다.그러나 단순한 손금보기와는 다르게, 그녀는 이 수열들을 단숨에 계산하여 알려줄 능력이 되지 못했기에 당신을 고용하여 각 값들을 결정하려 합니다. n!(n 팩토리얼)의 정의가 1*2*3*...*n임을 잊지 마세요. 그녀가 한 주의 , 한 달의, 혹은 한 해 중의 하루의 .. 더보기
UVa 324. Factorial Frequencies 324 - Factorial FrequenciesTime limit: 3.000 seconds Factorial Frequencies In an attempt to bolster her sagging palm-reading business, Madam Phoenix has decided to offer several numerological treats to her customers. She has been able to convince them that the frequency of occurrence of the digits in the decimal representation of factorials bear witness to their futures. Unlike palm-reading, how.. 더보기
Tesla's Post 연기 공지 아아... 요즘에 다들 바쁜가 봅니다. 저도 휴가 나온 친구 만나는지라... 포스팅이 늦어질 것 같습니다. 죄송합니다. 내일은 개인적인 일이 있고... 수요일에 활기차게 다음 포스트를 들고 찾아오겠습니다. 더보기
헬프 요청 =_= 요 며칠 매트릭스 포스팅한거 외에는 하는거 없이 노는 엠알케이이빈다 오늘 문득 빅플롯 개발(..)이나 좀 해볼까 싶어서 비주얼 스튜디오를 켰는데 얼마 전에 발생한 에러때문에 하나 질문좀 -_-; 에스티엘에다 유저가 개인적으로 만든 클래스를 사용하려면 어찌 해야하는거? (사진유, 1152×864) 더보기
Dlbo's post 연기 공지 --------------------------------------------------------------------------------- 사유 : 입-_-대하는 친구 연기일자 : 3. 17. 화. 예상 복귀 일자 : 3. 19 목. --------------------------------------------------------------------------------- 친척집도 몇군데 돌아야 하고 해서 아마 제때 포스트를 올리지 못할것 같습니다. 최대한 빨리 돌아와서 포스트 업로드 하겠습니다. 더보기
Reuent's Post 연기공지 Reuent군이 현재 악단 문제로 인해 제대로된 포스팅이 불가능합니다. 3월 중순까지 일이 몰려있다고 들었습니다. 3월 말경부터는 다시 제대로 포스팅이 가능하리라고 봅니다. 더보기
이런 건 어떻게 ?? 더보기
최대공약수와 최소공배수 최대공약수 (GCD : greatest common divisor) 유클리드의최대공약수 알고리즘 1. 두 개의 정수 u, v를 입력받는다. 2. v가 u보다 크면 값을 교환한다. 3. u에는 u-v의 값을 저장한다. 4. u가 0이면 v가 최대공약수. u가 0이 아니면 2로 돌아간다. 하지만 이 방법은 u와 v의 차가 크면 성능이 떨어지기때문에 다른 방법을 씁니다. 1. 두 개의 정수 u, v를 입력받는다. 2. v가 0이면 u가 최대공약수. 0이 아니면 u에 u%v를 대입하고 u와v의 값을 교환한다. 3. 2로 돌아간다. 함수 int gcd(int u, int v)//최대공약수 { return (v==0)? u : gcd(v, u%v); } 재귀함수로 간단히 구현할 수 있습니다. 삼항연산자를 처음보는 .. 더보기
Matrix : Part 5 안녕하십니까 Mr. K입니다 어제 저녁 내내 친구와 놀고 늦게 들어온 덕분에 포스팅하다가 피로를 이기지 못하고 자고 씁니다 -_-; 시작할게요! 여러분은 다음과 같은 식을 보면 □를 구할 수 있습니까? [그림 1] 아마 중학교를 졸업한 수준의 학생들이라면 대부분 답을 구할 수 있을 것입니다 ( 답은 1이죠 ) 이제 위 그림의 □를 x로 바꿔보겠습니다 [그림 2] 이제 이것을 방정식이라고 부를 수 있을 것입니다 ( 사실 그림1, 2 모두 방정식이지만, 그림1과 같은 식을 통해서 배울 때는 방정식이라는 말을 보지 못했을 수도 있으므로 ) 미지수 x의 차수가 1이므로 이것은 일차방정식입니다 이런 일차방정식이 두 개 이상 묶여있는 경우엔 그것을 연립일차방정식( 이하 연립방정식이라고 하겠습니다 )라고 합니다 ( .. 더보기
[공지] 3월 12일 포스트 안녕하세요 Mr. K입니다 오늘이 목요일인지 잊고 지냈네요 -_-; 오늘 포스트는 내일 올리겠습니다 그리고 현재 Bigfloat 개발 상황은 UBINT의 구현 100% 완료 BINT의 구현 100% 완료 유리수를 나타내는 BRATIO의 구현 85% 완료 정도입니다 이 이후에 바로 Bigfloat을 만들지, 바탕이 될만한 클래스를 하나 더 만들고 Bigfloat을 만들지는 아직 못 정했습니다 -_-; 만약 바탕이 될만한 클래스를 하나 더 만들게 되면 스파킹군한테 빌린 정수론 교재 THE THEORY OF NUMBERS와 제 정수론 교재 Elementary Number Theory, A Computational Approach를 참고할 예정입니다 -_-; 더보기
그래프 - 최소신장트리(Minimum spanning tree)?? 안녕하세요~ 오늘도 찾아왔습니다. 오늘은 굉장히 아주 굉장히 짧을 것 같습니다. 오늘은 저번에 말씀드린대로 최소신장트리(Minimum spanning tree)에 대해서 알아보고자 합니다. 저번시간에 신장트리에 대해서 말씀드렸었죠? 신장트리는 쉽게 말해 모든 정점을 연결한 트리를 말하는 것이지요? 연결을 최소로 한... 자 그럼 오늘 할 최소신장트리란 무엇인가? 신장트리에 최소가 들어갔네요. 음, 간단하게 해석하면 신장트리를 최소로 한다라고 할 수 있겠네요... 그런데 뭘 최소로 하는 걸까요? 여러분 지하철 타 보셨죠? 지하철로 예를 들어볼까요? 음 지하철을 타고 어떠한 지점에 간다고 할 때 최소한의 역을 통과해서 원하는 역에 도착할 수 있지요? 그런데 만약 다양한 길이 존재할 때 똑같은 정거장 수라도 .. 더보기
Generic Algorithm with C++, Last -min, max, foreach 끄흥흥 제네릭 알고리즘의 라스트 파트입니다. 어느새 끝나버렸군요. -_-; ------------------------------------------------------------------------------------------- #include #include #include using namespace std; void what_do(string data) { cout b; cout 더보기
Tesla's Post 공지 아... 네... 안녕하세요~ 잘 지내시죠? 이번에도 어김없이 새로운 학기가 시작되었군요... (물론 아닌 분들도 계시지요...ㅎㅎ) 그래서 그런지 오늘과 내일은 좀 시간이 안될거 같아서요... 수요일에 시간이 될 듯 합니다. 포스팅은 그 때 하도록 하겠습니다. 시간을 지키지 못해서 죄송합니다. 더보기
Bigfloat I, Bigfloat II 소스 개정 아직 팀블로그에 반영하지는 않았습니다만 ubint와 bint의 헤더, 그리고 구현cpp파일의 내용을 수정하였습니다 주 내용은 ubint로도 사칙연산이 가능하도록 바꾼 것입니다 ( unsigned int가 사칙연산이 가능하기 때문 ) 덤으로 ubint, bint 각각 double형과의 연산도 가능하도록 소스를 추가하였고, 대입연산자를 제외한 연산자들에 대해 자기 자신과의 연산자 오버로딩을 제외한 나머지 오버로딩들은 길이를 줄여놓았습니다 그 결과 ubint.h는 70줄 늘어났고 ubint.cpp는 153줄 늘어났고 bint.h는 34줄 늘어났고 bint.cpp는 270줄 줄어들었습니다 더보기
PKU1455. Crazy tea party. AC #include main() { int n, table, part1, part2; scanf("%d", &n); while(n--) { scanf("%d", &table); part1 = (table/2); part2 = (table-part1); part1--; part2--; printf("%d\n", ((part1 + 1)*part1)/2 + ((part2 + 1)*part2)/2); } } Run ID User Problem Result Memory Time Language Code Length Submit Time 4740526 jht009 1455 Accepted 196K 16MS C 270B 2009-03-07 19:56:58 정말 2부분으로 나누고 버블소트해주면 되네요. 더보기
Bigfloat II: Integer, BINT Mr. K입니다 어제 같이 올릴까 말까 했다가 그냥 어제 안올리고 오늘 올립니다 [헤더] #ifndef BINT_H #define BINT_H #include using std::ostream; using std::istream; #include using std::string; #include "ubint.h" // bint: Big INTeger class bint : public ubint { protected: int sign; // 0 is positive, 1 is negative public: bint(); bint( bint& b ); bint operator =( bint b2 ); bint( ubint ub ); bint operator =( ubint ub2 ); bint( strin.. 더보기
여럽훈! 인천대 학술소모임 OPG 홍보지에 넣을 친필싸인과 지원멘트 하나씩만 써주심 안될까요? ㅁ_ㅁ?; 친필싸인이 아니더라도 멘트 하니씩만 부탁드려요~ ㅁ_ㅁ; 더보기
Matrix : Part 4 안녕하십니까 Mr. K입니다 여기에 글을 쓰는것도 오랜만이군요 -_-; 원래 어제 올렸어야 되는데 수정된 ubint를 올려놓고 딴짓좀 하다보니 잊어버렸지 뭡니까; 그래서 공지를 띄우고 며칠 더 있다 올릴까, 지금 올릴까 하다가 지금 올립니다 -_-; 이번 포스트는 역행렬에 대해서 얘기해보겠습니다 이전까지 우리는 행렬의 기본적인 정의, 행렬간 덧셈·뺄셈의 정의, 행렬간 곱셈의 정의 등을 배웠습니다 행렬은 나눗셈의 개념은 없지만, 역행렬이라는 것이 있습니다 실수를 다룰 때, 다음과 같은 관계에서 a가 0이 아니라면 x, 즉 a의 역수를 생각해볼 수 있습니다 마찬가지로 행렬에서도, 다음과 같은 관계를 만족하는 행렬 A에 대해서는 X, 즉 A의 역행렬을 생각해볼 수 있습니다 [그림 2] A와 X 사이에 교환법칙.. 더보기
PKU 1455. Crazy Tea Party. [판정:AC] 아 -_-; input이 6일때 왜 output이 6이 나오는지를 몰랐는데 알고나니 수열이 맞긴 맞군요 -_-; #include int linear( int n ) { if( n 1; n-- ) { res += n - 1; } return res; } } void main() { int m, n; scanf("%d", &n); while( n > 0 ) { int half; scanf("%d", &m); half = m / 2; printf("%d\n", linear(half) + linear(m-half)); n--; } } 여태까지 N/2은 생각해보지도 않고 N-1만 보고 있는 꼴이었으니 -_-; 더보기
PKU1455. Crazy tea party. AC get.. #include using namespace std; int main() { int cases, i, n, result, a, b; cin >> cases; for (i = 0; i > n; if(n % 2 == 0) { result = (n / 2 - 1) * n / 2; } else { a = n / 2; b = n - n / 2; result = ((a-1) * a + (b - 1) * b) / 2; } cout 더보기
Bigfloat I: Natural Number, UBINT 안녕하십니까 Mr. K입니다 지난주에 올린 UBINT는 알고리즘상의 문제가 있어서 수정하였습니다 [헤더] #ifndef UBINT_H #define UBINT_H #include using std::ostream; using std::istream; #include using std::string; // ubint: Unsigned Big INTeger class ubint { protected: string num; public: ubint(); ubint( ubint& ub ); ubint operator =( ubint ub2 ); ubint( string number ); ubint operator =( string n2 ); ubint( int number ); ubint operator =( .. 더보기
개인프로젝트 선언서 - Bigfloat ※ 글의 형식은 Dlbo군의 것을 따라해봤습니다 필요 인원 : 1명 테스트 필요 인원 : 본인 포함 2명 이상 예상 구현 기간 : 3개월 이내 1. 기본 요구 기능 - double형 자료로 가능한 모든 연산을 Bigfloat에 구현 - Bigfloat과 정수형(char, short, int) 자료 사이의 가능한 모든 연산을 구현, 반대방향도 구현 - Bigfloat과 실수형(float, double) 자료 사이의 가능한 모든 연산을 구현, 반대방향도 구현 2. 설계 형식 - 실수의 체계가 [자연수 ⊂ 정수 ⊂ 유리수 ⊂ 실수]와 [유리수 ∪ 무리수 = 실수]임을 바탕으로 자연수에 해당하는 클래스부터 구현 - 정수 클래스는 자연수 클래스에서 상속을 받고, 유리수 클래스는 정수 클래스에서 상속을 받도록 함 .. 더보기
Real time based team coding system 기안서 재설계. Dlbo 군의 기안서를 읽어봤습니다. 뭐... 기본적으로 동의하는 부분이 많습니다만 제 나름대로 재설계해봤습니다. 포토샵 능력이 없어서 -_-;; 스캔 했습니다. 이해해 주시길. 일단 Log in 클라이언트에서 로그인을 합니다. 로그인 대상은 당연히 Server 지요. Server 컴퓨터의 IP Adress, 그리고 Nick 을 같이 입력하고 Server 에 Log in 을 합니다. 한 Server 에서는 프로젝트를 여러가지 관리할 것이므로 원하는 - 혹은 소속되어 있는 - 프로젝트를 선택하면 Coding Client 를 실행합니다. Coding window, 그리고 Processing window 두 가지 Client 를 동시에 실행합니다. 말 그대로 Coding window 에서는 코딩을 진행하고, .. 더보기
Generic Algorithm with C++, 08 - find & searching! ㄲㄲㄲㄲㄲ 이번엔 find와 search를 동시에 연재합니다. 이래야 후딱 끝내고 네트워크를 들어가지 ㄱ- ---------------------------------------------------------------------------- find() 함수와 search()함수는 쪼까 다르면서도 비슷한 친구입니다. find는 찾아내서 해당 녀석을 리턴하는거고, search는 구간을 찾아내어 그 결과를 알려줍니다. find()함수는 아주 간단한데요, 템플릿 함수라 그런지 이터레이터 두개와 값 한개를 받고 이터레이터를 반환합니다. #include #include #include using namespace std; int main() { list list1, list2; list::iterator it.. 더보기
그래프 - 신장트리(Spanning tree)?? 네 안녕하심까~ 테슬라입니다. 자, 모두 개학 시즌이시죠? 새로운 마음으로 시작해볼까요? 오늘은 신장트리(Spanning tree)에 대해서 써볼까 합니다. 음 신장트리란 무엇인가? 임의의 그래프 G에 대한 부분그래프중에서 모든 정점과 연결된 부분 그래프를 말합니다. 부분그래프는 저번에 설명한 것과 같이 어떠한 그래프 G의 정점과 간선을 이용하여 만들수 있는 그래프를 말합니다. 집합에서 부분집합을 떠올리시면 되는것이지요. 단, 연결은 최소한으로 합니다. 괜시리 필요없이 간선을 사용 할 필요가 없다는 것이지요. 아무튼 이러한 부분그래프 중에서 이을 수 있는 모든 정점을 이으셔서 하나의 그래프를 만드시는 것이지요. 예를 들어볼까요? 자 요런 그래프가 있다고 하지요. 자 요런것들은 신장트리라고 할수 있을까요?.. 더보기
bigfloat 부등호 오류수정, 뺄셈 #include #define DELETE_SAFELY(p) if(p){delete []p;p=NULL;} class bigfloat { private: char *arr; char sign; int leninte, lendeci, lenwh; public: //단항연산자 void operator = (char *); void operator = (double); void operator = (bigfloat &); bigfloat(); bigfloat(char *); bigfloat(double); bigfloat(bigfloat &); ~bigfloat(); //부등호 friend int operator == (bigfloat &, bigfloat &); friend int operator != (b.. 더보기
팀프로젝트 제안서 - 동시 팀 코딩 시스템 Prototype 1. 팀프로젝트 제안서 - 팀 동시 다중 코딩시스템 프로토타입 1. 필요 예상 인원 : 1 ~ 5명 가량. 테스트 필요 인원 : 1 ~ 10명 가량. 예상 구현 기간 : 3 ~ 5개월 가량. 1. 기본 요구 기능 - 1개 파일에 대해 1명의 유저만 접근해 처리하도록 하며, 프로토타입 2부터는 다른 방식을 도입. - 모든 파일은 서버에서 관리할것. - 컴파일 기능은 상관 없음. 기존 GCC나 다른 컴파일러로 처리하게 하는 방식 고려. 프로토타입 2부터 처리하면 됨. - 서버의 IP를 모르더라도 접근 가능하도록 브로드캐스팅을 이용해야 함. 이를 통해 모바일 서버가 가능해 팀원들이 어디서나 작업이 가능해야 함. - 파일 저장은 유저의 요청시마다 매번 처리하게 하며, 자동저장기능은 프로토타입 2부터 구현. - 대화창.. 더보기