国产探花免费观看_亚洲丰满少妇自慰呻吟_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;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 三门峡市| 遵义市| 巴中市| 东源县| 衡阳市| 瑞金市| 杭锦旗| 和田市| 方城县| 辛集市| 诸暨市| 理塘县| 东丽区| 珲春市| 崇义县| 巴林左旗| 三台县| 托克托县| 剑河县| 馆陶县| 和林格尔县| 威宁| 资兴市| 西平县| 山西省| 北流市| 河北省| 汾阳市| 江阴市| 皋兰县| 伊春市| 方城县| 天台县| 政和县| 江川县| 青阳县| 榆中县| 阳新县| 保靖县| 双辽市| 金川县|