- 博客(11)
- 收藏
- 关注
原创 [SDOI2008] 仪仗队 题解
[SDOI2008] 仪仗队 题解本题乍一看没有什么思路,但是我们不妨把样例中所有的点都列举出来:我们按照数字从大到小的顺序把坐标排列一下(不计入重复的点):在这些点中,一部分是被看见的,一部分未被看见,我们将未被看见的标记为“舍”:我们可以发现,除数字 1 外,所有被 “舍” 的点中,横纵坐标都不是互质数;也就是说,除了 1 以外,只要横纵坐标互质,那么这个点就可以被看见。这让我们不由得想到某个东西——欧拉值。我们去掉被舍去的点:不难看出:对于 [2, n-1] 中的每一个正整数 i
2022-05-17 11:22:49
718
原创 [NOIP2012 提高组] 同余方程
[NOIP2012 提高组] 同余方程求关于 x 的同余方程 ax ≡ 1 (mod b) 的最小正整数解.(a, b为正整数)首先我们立刻就能想到三种方法(bushi1.扩展欧几里得我们知道,扩欧实际上是求解方程 ax + by = gcd(a, b) 的过程,那么这两个方程之间有什么关系呢?因为 by 是 b 的倍数,所以不难证明:ax + by ≡ 1 (mod b) ①加了by跟没加一样我们设 m = ax + by,因为 a 是 gcd(a, b) 的倍数,b 也是 gc
2022-05-14 00:21:46
1302
原创 [NOIP2016] 买铅笔 题解(超简单!)
解法:先统计出每种铅笔最少需要的包数,然后与对应价格相乘,求出三种铅笔的最终花费,最后输出最小值#include <iostream>#include <algorithm>using namespace std;int main(){ int want, pcl[3], prc[3], sum = 1; //pcl 为三种铅笔的个数,prc 为三种铅笔的价格 cin >> want >> pc...
2021-10-07 10:41:09
710
原创 [NOIP2016] 回文日期 题解(超简单!)
解法:将所有可能出现的回文日期枚举,最终输出区间内回文日期的个数注意:当月份为“02”时,年份尾数为“20”,此时年份数为4的倍数,且不为100的倍数,因此将2月份设置为29天。#include <iostream>using namespace std;int day[13] = {0,31,29,31,30,31,30,31,31,30,31,30,31}; //设置十二个月的天数int main(){ int a, b, tmp, sum = 0;
2021-10-07 10:17:22
2120
原创 [UVa1585] Score 题解
#include<bits/stdc++.h> using namespace std;char a[85];int main(){ int b = 1, score = 0; cin >> a; for(int i = 0; i < strlen(a); i++){ if(a[i] == 79) score+=b++; else b = 1; } cout << score; return 0;}
2021-09-29 20:51:10
122
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人