problemscpp
A collection of my answers to algorithm problems in c++.
静态 Public 成员函数 | 所有成员列表
acwing::acwing1996类 参考

AcWing 1996. 打乱字母 更多...

#include <acwing.h>

静态 Public 成员函数

static bool cmp (char x, char y)
 
static int main (istream &, ostream &)
 

详细描述

AcWing 1996. 打乱字母

在文件 acwing.h315 行定义.

成员函数说明

◆ cmp()

bool acwing::acwing1996::cmp ( char  x,
char  y 
)
static

在文件 acwing.cpp812 行定义.

812{ return x > y; }

被这些函数引用 main().

◆ main()

int acwing::acwing1996::main ( istream &  cin,
ostream &  cout 
)
static

在文件 acwing.cpp770 行定义.

770 {
771 int n;
772 cin >> n;
773 auto names = vector<string>();
774 names.resize(n);
775 auto min_names = vector<string>();
776 auto max_names = vector<string>();
777 min_names.resize(n);
778 max_names.resize(n);
779 for(int i = 0; i < n; i++) {
780 cin >> names[i];
781 const auto *min_name_const_c_str = names[i].c_str();
782 const auto *max_name_const_c_str = names[i].c_str();
783 auto *min_name_c_str = new char[names[i].length() + 1];
784 auto *max_name_c_str = new char[names[i].length() + 1];
785 strcpy(min_name_c_str, min_name_const_c_str);
786 strcpy(max_name_c_str, max_name_const_c_str);
787 sort(min_name_c_str, min_name_c_str + names[i].length() * sizeof(char));
788 sort(max_name_c_str, max_name_c_str + names[i].length() * sizeof(char), cmp);
789 const auto min_name = string(min_name_c_str);
790 const auto max_name = string(max_name_c_str);
791 min_names[i] = min_name;
792 max_names[i] = max_name;
793 delete[] min_name_c_str;
794 delete[] max_name_c_str;
795 }
796 auto min_names_sorted = vector(min_names);
797 auto max_names_sorted = vector(max_names);
798 sort(min_names_sorted.begin(), min_names_sorted.end());
799 sort(max_names_sorted.begin(), max_names_sorted.end());
800 for(int i = 0; i < n; i++) {
801 auto min_name = min_names[i];
802 auto max_name = max_names[i];
803 cout << lower_bound(max_names_sorted.begin(), max_names_sorted.end(), min_name) - max_names_sorted.begin() +
804 1
805 << " "
806 << upper_bound(min_names_sorted.begin(), min_names_sorted.end(), max_name) - min_names_sorted.begin()
807 << endl;
808 }
809 return 0;
810 }
static bool cmp(char x, char y)
Definition: acwing.cpp:812

引用了 cmp().

被这些函数引用 acwing::TEST().


该类的文档由以下文件生成: