P2267 琪琪的项链

    • 60通过
    • 290提交
  • 题目提供者 lin_toto Kaguya
  • 评测方式 云端评测
  • 标签 高性能
  • 难度 提高+/省选-
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 体验新版界面

    最新讨论 显示

    推荐的相关题目 显示

    题目背景

    Piet项目的一对开发者laosb(吕世博)与scjyholy(叶嘉琪)最近一直为中国学生站长联盟的童鞋们所津津乐道,不仅仅因为他们天天在某群中秀恩爱,而且他们还经常被用作题目背景。现在我们以他们为背景来引出一道问题。

    题目描述

    话说laosb在与scjyholy配对成功1周年后,laosb花光了其所有的积蓄,为scjyholy买了一条项链。但是,他发现店中项链的样式实在太少,于是他想买回一条项链,组成自己的独特样式,以使scjyholy感动。

    首先laosb把项链中所有珠子取下,然后从左到右,选出若干珠子(至少1颗),组成新的项链。因为项链珠子有很多颜色,laosb希望知道他一共能组合出多少种不同的样式。

    如图所示,假设原始的项链有3颗珠子:蓝、黄、蓝,这样他一共有如下的选择方法:

    由于答案可能很大,请输出答案 mod M的结果。

    输入输出格式

    输入格式:

    输入第1行,两个整数N、M,其中N为原始珠子数目。

    输入第2行,N个非负整数,每个整数代表一颗珠子颜色,相同整数表示颜色相同。

    输出格式:

    输出一个整数,表示样式总数 mod M的值。

    输入输出样例

    输入样例#1: 复制
    3 100
    1 888 1
    
    输出样例#1: 复制
    6
    输入样例#2: 复制
    4 100
    1 2 3 4
    
    输出样例#2: 复制
    15

    说明

    0 < N ≤ 500000

    0 < M < 10^9

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。