오랜만에 파싱,,

computer_log·2023년 9월 8일
0

string class parsing

#include <iostream>
#include <string>

using namespace std;

//int T;
int main() {
	//freopen_s(new FILE*, "input.txt", "r", stdin);
	string str = "33,10";
	int len = str.length();

	int a = -1;
	while (1) {
		a = str.find(',', a + 1);
		if (a == -1)break;
		int t1 = stoi(str.substr(0, a));
		int t2 = stoi(str.substr(a + 1, len - a));
			cout <<t1-t2 << "\n";
	}
	return 0;
}

parsing 기본1)
자주쓰는 메서드

  1. find 찾은 단어의 index를 반환한다.
  2. substr 단어를 추출해준다.

백준 10953


백준 20291

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;

int T;
struct Node {
	int cnt;
	string str;
};
vector<string>v;
vector<Node>result;
int compare(Node t, Node v) {
	return t.str < v.str;
}
int main() {
	freopen_s(new FILE*, "input.txt", "r", stdin);
	cin >> T;
	for (int i = 0; i < T; i++) {
		int a = -1;
		string str;
		cin >> str;
		int len = str.length();
		while (1) {
			a = str.find('.', a + 1);
			if (a == -1)break;
			string extension = str.substr(a + 1, len - a - 1);

			v.push_back(extension);
		}
	}
	result.push_back({ 1,v[0] });
	for (int i = 0; i < result.size(); i++) {
		string tar = result[i].str;
		int flag = 0;
		for (int j = 1; j < 8; j++) {
			if (tar == v[j]) {
				result[i].cnt++;
			}
		}	
	}


	return 0;
}
profile
computer_log

0개의 댓글