# 985/211 院校名单（用于 Dashboard 学校分布自动分类）

SCHOOLS_985 = {
    '北京大学', '清华大学', '中国人民大学', '北京航空航天大学', '北京理工大学',
    '北京师范大学', '中国农业大学', '中央民族大学',
    '南开大学', '天津大学',
    '大连理工大学', '东北大学',
    '吉林大学',
    '哈尔滨工业大学',
    '复旦大学', '上海交通大学', '同济大学', '华东师范大学',
    '南京大学', '东南大学',
    '浙江大学',
    '中国科学技术大学',
    '厦门大学',
    '山东大学', '中国海洋大学',
    '武汉大学', '华中科技大学',
    '湖南大学', '中南大学', '国防科技大学',
    '中山大学', '华南理工大学',
    '四川大学', '电子科技大学',
    '重庆大学',
    '西安交通大学', '西北工业大学', '西北农林科技大学',
    '兰州大学',
}

# 211院校（不含985，即"纯211"）
SCHOOLS_211 = {
    '北京交通大学', '北京工业大学', '北京科技大学', '北京化工大学',
    '北京邮电大学', '北京林业大学', '北京中医药大学', '北京外国语大学',
    '中国传媒大学', '对外经济贸易大学', '中央财经大学', '中国政法大学',
    '华北电力大学', '中国矿业大学', '中国矿业大学(北京)', '中国石油大学',
    '中国石油大学(北京)', '中国地质大学', '中国地质大学(北京)',
    '北京体育大学',
    '河北工业大学',
    '太原理工大学',
    '内蒙古大学',
    '辽宁大学', '大连海事大学',
    '延边大学', '东北师范大学',
    '哈尔滨工程大学', '东北农业大学', '东北林业大学',
    '华东理工大学', '东华大学', '上海外国语大学', '上海财经大学', '上海大学',
    '第二军医大学',
    '苏州大学', '南京航空航天大学', '南京理工大学', '中国药科大学',
    '河海大学', '江南大学', '南京农业大学', '南京师范大学',
    '安徽大学', '合肥工业大学',
    '福州大学',
    '南昌大学',
    '郑州大学',
    '武汉理工大学', '华中农业大学', '华中师范大学', '中南财经政法大学',
    '湖南师范大学',
    '暨南大学', '华南师范大学',
    '广西大学',
    '海南大学',
    '西南交通大学', '西南大学', '四川农业大学', '西南财经大学',
    '贵州大学',
    '云南大学',
    '西藏大学',
    '西北大学', '西安电子科技大学', '长安大学', '陕西师范大学',
    '第四军医大学',
    '青海大学',
    '宁夏大学',
    '新疆大学', '石河子大学',
}


def classify_school(school_name):
    """根据学校名称返回院校类型：985 / 211 / 其他"""
    if not school_name:
        return '其他'
    name = school_name.strip()
    if name in SCHOOLS_985:
        return '985'
    if name in SCHOOLS_211:
        return '211'
    # 模糊匹配：处理"xx大学xx学院"等情况
    for s in SCHOOLS_985:
        if s in name or name in s:
            return '985'
    for s in SCHOOLS_211:
        if s in name or name in s:
            return '211'
    return '其他'
