国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

1047. Student List for Course (25)

2019-11-14 09:37:28
字體:
來源:轉載
供稿:網友

1. 原題: https://www.patest.cn/contests/pat-a-PRactise/1047

2. 思路:

題意:輸出每個課程的學生名字。比較簡單。思路:此題關鍵是處理超時問題。所以要把名字轉換成數字來存儲,用字符串超時。剩下的就是把每個課程的學生名字壓入vector里面,再排序輸出。

3. 源碼(已AC):

#include<iostream>#include<algorithm>//使用sort函數#include<vector>using namespace std;const int Max = 2501;//最大課程數int toId(char *s);//名字轉換成數字idvoid toName(int id, char *s);//數字轉換成名字int main(void){	//freopen("in.txt", "r", stdin);	int N, K;	scanf("%d %d", &N, &K);	vector<int> cou[Max];//存儲每個課程的學生名字	char name[5];	int c;	for (int i = 0; i < N; i++)	{		scanf("%s %d", name, &c);		for (int j = 0; j < c; j++)		{			int id;			scanf("%d", &id);			cou[id].push_back(toId(name));//壓入vector		}	}	for (int i = 1; i <= K; i++)//輸出	{		int size_s = cou[i].size();		if (size_s != 0)		{			sort(cou[i].begin(), cou[i].end());//先排序			printf("%d %d/n", i, size_s);			for (int j = 0; j < size_s; j++)			{				toName(cou[i][j], name);				printf("%s/n", name);			}		}		else			cout << i << ' ' << 0 << endl;	}	return 0;}int toId(char *s)//名字轉換成數字id{	int id = s[3] - '0';	id += (s[2] - 'A') * 10 + (s[1] - 'A') * 260 + (s[0] - 'A') * 260*26;	return id;}void toName(int id, char *s)//數字轉換成名字{	s[4] = '/0';	s[3] = id % 10 + '0';	s[2] = id % 260/10 + 'A';	s[1] = id / 260 % 26 + 'A';	s[0] = id / 260 / 26 + 'A';	return;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 霸州市| 台州市| 岳阳县| 凤城市| 汉中市| 嘉荫县| 桓台县| 沙洋县| 湛江市| 桂平市| 平远县| 吴桥县| 定兴县| 新和县| 集安市| 前郭尔| 长沙市| 苏尼特左旗| 六枝特区| 买车| 任丘市| 北碚区| 时尚| 大同市| 扎鲁特旗| 黄大仙区| 盐边县| 霍林郭勒市| 如东县| 东乡族自治县| 尉犁县| 牙克石市| 枝江市| 凤冈县| 苗栗市| 莫力| 岳池县| 华池县| 博罗县| 西藏| 当阳市|