1 条题解
-
0
C++ :
#include <cstdio> #include <vector> #include <string> #include <map> using namespace std; /* 按用户名首次出现顺序输出,每个用户后面按记录顺序跟其浏览过的网页。 */ static char bu[1005], bp[1005]; int main(){ int N, M; if(scanf("%d %d", &N, &M) != 2) return 0; map<string, int> id; vector<string> order; vector<vector<string> > pages; for(int i = 0; i < M; i++){ scanf("%s %s", bu, bp); string u(bu), p(bp); map<string, int>::iterator it = id.find(u); int k; if(it == id.end()){ k = (int)order.size(); id[u] = k; order.push_back(u); pages.push_back(vector<string>()); } else k = it->second; pages[k].push_back(p); } for(size_t i = 0; i < order.size(); i++){ printf("%s", order[i].c_str()); for(size_t j = 0; j < pages[i].size(); j++) printf(" %s", pages[i][j].c_str()); putchar('\n'); } return 0; }
- 1
信息
- ID
- 2686
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者