퍼펙트코딩
퍼펙트코딩
퍼펙트코딩
전체 방문자
오늘
어제
  • 분류 전체보기 (35)
    • C++ (4)
    • Phython (1)
    • C (2)
    • 프로그램 에러 (3)
    • 공부 정리글 (1)
      • 자료구조 (0)
    • 백준 (23)
      • GOLD (5)
      • BRONZE (8)
      • SILVER (10)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • BOJ 23972
  • 1715 C++
  • BOJ 1181
  • 3003 C++
  • BOJ 9084
  • 백준 23972번
  • 백준 9084번
  • 23972 C++
  • 9084 C++
  • 백준 3003
  • 백준 10807
  • BOJ10807
  • 10807 C++
  • BOJ 3003
  • 백준 1715번
  • 백준 3003번
  • 백준
  • 백준 23972
  • c++
  • BOJ 1715

최근 댓글

최근 글

티스토리

250x250
hELLO · Designed By 정상우.
퍼펙트코딩

퍼펙트코딩

카테고리 없음

[백준 1181번][C++] 단어 정렬

2022. 8. 29. 01:29
728x90
반응형
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;

int main() {
	int test;
	cin >> test;

	vector<string> v; //단어 리스트 저장할 벡터
	vector<int> size; //단어들의 길이 저장할 벡터
	for (int i = 0;i < test;i++) {
		string str; //단어 저장할 변수
		cin >> str; //문자 입력받음
		v.push_back(str); //단어 저장
		size.push_back(str.size()); //단어의 길이 저장
	}

	sort(size.begin(), size.end()); //단어의 길이 오름차순 정렬
	size.erase(unique(size.begin(), size.end()), size.end()); //단어의 길이 중복 제거
	sort(v.begin(), v.end()); //알파벳 순으로 정렬
	v.erase(unique(v.begin(), v.end()), v.end()); //중복 제거

	for (int len : size) { //길이 작은 것부터
		for (int i = 0;i < v.size();i++) {  //모든 단어 탐색
			if (v[i].size() == len) {  //길이가 같으면 출력하고 제거
				cout << v[i] << '\n';
			}
		}
	}

}
728x90
반응형
    퍼펙트코딩
    퍼펙트코딩

    티스토리툴바