728x90
728x90

String 10

백준] 2890 - 카약(COCI 2009/2010)

시간 제한 : 1초메모리 제한 : 128MB 입력첫째 줄에 R과 C가 주어진다. 다음 R개 줄에는 '.', 'S', 'F', '1'~'9'로 이루어진 위성 지도가 주어진다. 한 줄에는 최대 한 개의 카약만 있고, 위성 사진에 있는 카약은 항상 9개이다. (10 ≤ R, C ≤ 50) 출력출력은 총 9줄을 해야 한다. i번째 줄에는 i번 팀의 등수를 출력한다. (i=1~9) 소스코드#include #include #include #include using namespace std; struct team { int id; int distance; int rank; }; bool compareDistance(const struct team a, const struct team b) { if (a.distanc..

백준] 1864 - 문어 숫자(ACM-ICPC Regionals)

시간 제한 : 1초메모리 제한 : 128MB 입력한 줄에 하나씩 문어 숫자가 입력으로 주어진다. 각 숫자는 최소 한 개, 최대 여덟 개의 문어 숫자 기호로 이루어져있다. 입력으로 '#'이 들어오면 입력을 종료한다. 출력입력 받은 문어 숫자에 대응하는 십진수를 한 줄에 하나씩 출력한다. 소스코드#include #include #include using namespace std; int main(void) { while (1) { int len; long long ans = 0; string str; cin >> str; if (str == "#") break; len = str.length(); for (int i = 1; i

C++] 공백을 포함하는 문자열 여러 줄 입력 받기

문자열 처리 문제는 대부분 공백을 포함하는 한 문장을 다루는 문제가 많다.간혹 그 이상의 문장을 처리해야 하는 문자열 처리 문제가 주어지는 경우가 있는데 이 때 공백을 포함하는 문장을 EOF가 입력될 때까지 문장을 입력 받고 싶다면 아래처럼 처리하면 된다. vector s; string str; while (getline(cin, str)) s.push_back(str); 문장의 수가 예상 가능하다면 동적 배열 vector가 아닌 정적 배열을 선언해도 좋다.

C++에서 문자열을 숫자로, 숫자를 문자열로

문자열 처리, 특히 숫자를 문자열로 다루어야 하는 문제들을 접하면 C언어를 주로 했던 사람들은 바로 떠올리는 게 atoi나 itoa다. 물론, 이를 몰라서 아스키 코드를 바탕으로 한 문자열 처리를 하겠지만(필자가 그랬다.), 어쨌든 이 두 함수를 알고 있는 사람들은 C++에서도 cstdlib.h 헤더 파일을 추가해주면 사용이 가능하다. 문자열을 숫자로 변환시켜주는 atoi는 표준 함수라서 크게 문제되진 않지만, 함수 자체가 가지고 있는 문제점이 있어서 더 좋은 대안이 있다면 사용에 주의를 기울여야 한다. 보통은 기본적인 수준의 문자열 처리 문제들을 푸는 상황에서는 문제가 없다. 문제는, 숫자를 문자열로 변환 시키는 itoa다. 표준이 아니라서 비표준 함수를 처리해주지 못하는 컴파일러를 만나면 컴파일 에러..

백준] 2864 - 5와 6의 차이

시간 제한 : 1초메모리 제한 : 128MB 입력첫째 줄에 두 정수 A와 B가 주어진다. (1 a >> b; alen = a.length(), blen = b.length(); for (int i = 0; i < alen; i++) if (a[i] == '5') a[i] = '6'; for (int i = 0; i < blen; i++) if (b[i] == '5') b[i] = '6'; s1 = stoi(a) + stoi(b); for (int i = 0; i < alen; i++) if (a[i] == '6') a[i] = '5'; for (int i = 0; i < blen; i++) if (b[i] == '6') b[i] = '5'; s2 = stoi(a) + stoi(b); cout

Python] 문자열 정의

###Python 문자열 정의 - 문자열 내에 '를 사용할 경우,""를 이용해 문자열을 정의하면 이용 가능\'을 이용하면 ''를 이용해 문자열을 정의 가능str = 'Don\t move "RUN"' - \는 다음 라인이 현재 라인의 뒤에 이어짐을 나타냄long_str = "This is a rather long string \containing back slash and new line." - 여러 줄의 문자열 정의multiline = """ While the rest of the world has been catching on tothe Perl scripting language, the Linux community,long since past ...has been catching on to a """..

C#] 인덱서(Indexer)

인덱서(Indexer) 인덱서는 값들의 목록이나 사전을 캡슐화하는 클래스나 구조체에서 특정값에 자연스러운 구문으로 접근하기 위한 기능을 제공하는 멤버Property와 유사하나, 이름이 아니라 색인 변수를 통해 접근함인덱서를 사용하는 구문은 배열 사용 구문과 유사하나, 정수 이외 형식도 색인으로 사용 가능적용할 수 있는 수정자는 property의 것들과 동일함 string 클래스에는 문자열을 구성하는 특정 문자의 char 값에 int 색인을 통해서만 접근할 수 있게 하는 인덱서가 존재 class IndexerText { string[] test = "This is Text Code".Split(); public string this [int wordNum] // Indexer { get { return w..

Python] 파이썬 문자열 메소드

###Python 문자열 메소드 s = 'i like programming.' s.upper() # 모두 대문자로s.lower() # 모두 소문자로s.swapcase() # 대문자는 소문자, 소문자는 대문자s.capitalize() # 첫 문자를 대문자로s.title() # 각 단어의 첫 문자를 대문자로 s.count('like') # 'like' 문자열이 출현한 횟수 반환s.find('like') # 'like' 첫 글자의 위치(offset)을 반환s.find('like',3) # offset=3 부터 'like'를 검색해 첫 글자의 위치 반환 - find의 경우 단어가 없을 경우 -1 반환 s.startswith('i like') # 'i like'로 시작하는 문자열인지 판단s.endswith('sw..

C,C++] Strlen와 동일한 기능을 하는 함수 구현

사실 함수 구현이라고 적어두긴 했으나,strlen과 비슷한 함수를 작성한 것 뿐이며,포인터를 이용하거나 하지 않았기 때문에,사용자가 정의한 함수라고 보기도 어렵다.그저 이러이러한 논리로 strlen과 비슷할 것이다가 전부일 뿐이므로, 오해는 금물이다.이 소스를 int str_len(char *s)와 같은 함수를 이용하여 strlen함수와 유사하게 만들 수 있다. 12345678910111213141516#include #include using namespace std; int main(){ char str[40] = "Make String Library Function"; int func, i = 0; func = strlen(str); while (str[i] != 0) i++; cout

728x90