洛谷P1161 开灯 数学

其实这道题就是让你求这些数字中 出现了奇数次数的唯一的那个数
然后我们发现出现偶数次的话 因为 x^x=0 0^x=x
所以将这些数 异或起来最后剩下的那个数就是答案了

 1 #include <cstdio>
 2 #include <cmath>
 3 #include <cstring>
 4 #include <cstdlib>
 5 #include <string>
 6 #include <algorithm>
 7 #include <iomanip>
 8 #include <iostream>
 9 using namespace std ;
10
11 const double esp = 0.000001 ;
12 int n,b ;
13 int sum ;
14 double a ;
15
16 int main()
17 {
18     scanf("%d",&n) ;
19     for(int i=1;i<=n;i++)
20     {
21         scanf("%lf%d",&a,&b) ;
22         for(int j=1;j<=b;j++)
23             sum = sum^(int)(a*j+esp) ;
24     }
25     printf("%d\n",sum ) ;
26     return 0 ;
27 }
时间: 2024-08-08 01:08:20

洛谷P1161 开灯 数学的相关文章

洛谷 P1876 开灯

传送门 这道题凭什么是! 就因为它代码短?! 还是我太菜了... 第$i$盏灯的开关与否只由其约数个数决定,又有约数公式: 当$n=p_1^{a_1}p_2^{a_2}...p_n^{a_n}$时,约数个数$=(a_1+1)(a_2+1)...(a_n+1)$要使灯亮着,则$(a_1+1)(a_2+1)...(a_n+1)$是奇数.于是$a_1, a_2, a_3, ... a_n$都是偶数.所以$n=m^2, m=p_1^{a_1/2}p_2^{a_2/2}...p_n^{a_n/2}$于是所

洛谷P1313 计算系数 数学 数论

洛谷P1313 计算系数 数学 数论 1.首先我们不管这个系数 a b 那么他的系数就是杨辉三角 他那项就是 c(k,n)x^n*y^m 2.然后现在加了系数 a 和 b ,那么就只要把 a 看做 x中的,然后a与x一样,相当a^n 3.可以发现,x^n*y^m项的系数一定有一个因数a^n*b^m,所以可以提取出来. 4.然后关于求C的话由两种方法,一种方法是杨辉三角 这样要 n^2 求 但数据再大点就挂了 5.然后还可以质因数分解求 6.我是用费马小定理求逆元做的,因为 mod 别的还行,除法

洛谷P1969 积木大赛 数学

洛谷P1969 积木大赛 题意: 对于n个积木 排成了一排 高度不同 每次可以使 L--R的区间积木减一,但不能使积木高度减至 0 以下 , 求几次能够使得所有积木高度降为 0 数学 1.对于一段 上升.不下降序列,其较低的一定会在解决最高时候就解决掉 2.而这段区间还同时会解决掉下一段区间最小值 以下的那些积木 3.所以这段区间消耗值就是这段上升(不下降)序列的最大值减最小值 先写思路:对于一段上升(不下降)区间,我们在搭最高层时可以把下面一起搭了而如果这个区间开始下降,那么我们进入另一个区间

洛谷 P2962 [USACO09NOV]灯Lights

P2962 [USACO09NOV]灯Lights 题目描述 Bessie and the cows were playing games in the barn, but the power was reset and the lights were all turned off. Help the cows get all the lights back on so they can resume their games. The N (1 <= N <= 35) lights conve

洛谷P1258 小车问题 数学 推公式

s 表示 AB两地的距离 a 人的速度 b 车的速度 x 表示 车送第一个人送了多远 我们强制方案是这样 车先送第一个人到达距离起点 x 的地方 然后车回去接第二个人 接着车直接送第二个人到终点,这是两人同时到终点 解:设车带第一个人行x,那么折返与另一人相遇,另一人和车的总距离是2x,总速度是a+b,时间就是2x/(a+b), 人走的距离就是2ax/(a+b),应与第一个人被车扔下后走的距离s-x相等 s-x=2ax/a+b 2ax=as+bs-ax-bx 所以(3a+b)x=(a+b)s 1

洛谷P1080 国王游戏 高精度 贪心 数学推公式

洛谷P1080 国王游戏        数学推公式      高精度    贪心 然而这并不是我打出来的,抄题解... 将左手与右手的乘积从小到大排序,然后计算求最大值即可.(需要高精度) 证明: 1)知道,如果相邻的两个人交换位置,只会影响到这两个人的值,不会影响他人 2)假设相邻的两个人i, i + 1.设A[i] B[i] <= A[i + 1] B[i + 1],i之前所有人的左手乘积为S. 则,ans1 = max{S / B[i], S * A[i] / B[i + 1]} 若交换

洛谷P1145 约瑟夫 数学

洛谷P1145 约瑟夫   数学 在做这题之前最好先做一下普通的约瑟夫问题 普通的约瑟夫问题  有一种递推的做法,比如说  12345 五个数,删掉3  之后,那你就把4编号改成3   5改成4,然后继续做就行了,但是后来这样求出的编号并不是其真实的编号,而是虚的编号 然后这道题如果前k个一直没被删,那么被删除的编号一定是大于 k 的, 这样做下去一直判断下去就行了,因为要mod 然后重新编号有些麻烦,所以还是坐标还是从0开始方便安全 1 #include<cstdio> 2 using na

洛谷P1199 三国游戏 博弈论 数学

洛谷P1199 三国游戏博弈论 数学 这道题 其实 人是必胜的 能取到的最大值 为 每行第二大值中的最大值 为什么呢 假使第一次我们取到了我们心中的那个答案的所在行 那么接着电脑会取 这一行最大值的对应行 那么我们来分析一下电脑取的那个数在他取的那行的特点 首先我们假设其不是最大值,因为矩阵中任意两个数不相同 所以也就是说还有个数比他大,然后就是说电脑取的第二大或者第n大值就已经比我们取的第一大值要大了,说明我们取的行并不是每行第二大值中的最大值所在的行2.也就是说这个数必定为该行中的最大值 那

洛谷P1061 Jam的计数法 数学

洛谷P1061 Jam的计数法 数学 已知一个字符串 其 均有 s--t构成 且字符串要求 s[ i ]<s[ j ] i < j 已知一个字符串 求按字典序排列 的后5个字符串 1. 对于一个字符串已知,我们如何求他的下一个字符串呢? 我们可以从低位枚举到高位,找到第一个可以增长的数,然后增长2.同时把自己后面的串改为字典序最小,即这一位为上一位 + 1 这样字典序就最小了 1 #include <cstdio> 2 #include <cmath> 3 #inclu