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

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

1047. Student List for Course (25)

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

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;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 淄博市| 云浮市| 潜江市| 祁阳县| 日喀则市| 裕民县| 周宁县| 游戏| 当涂县| 壤塘县| 保山市| 天祝| 渝北区| 大悟县| 平山县| 民和| 邵阳市| 宁晋县| 镇赉县| 德州市| 菏泽市| 聂荣县| 湄潭县| 长治市| 哈巴河县| 杨浦区| 灯塔市| 盘锦市| 海晏县| 定远县| 霍城县| 宁河县| 蓝田县| 盱眙县| 钟祥市| 封开县| 苗栗县| 延安市| 渭源县| 镇安县| 鄢陵县|