洛谷p1980 计数问题】的更多相关文章

题目描述 试计算在区间 111 到 nn n的所有整数中,数字x(0≤x≤9) x(0 ≤ x ≤ 9)x(0≤x≤9)共出现了多少次?例如,在 111到11 11 11中,即在 1,2,3,4,5,6,7,8,9,10,111,2,3,4,5,6,7,8,9,10,111,2,3,4,5,6,7,8,9,10,11 中,数字 111 出现了 444 次. 输入格式 222个整数n,xn,xn,x,之间用一个空格隔开. 输出格式 111个整数,表示xxx出现的次数. 输入输出样例 输入 #1 复…
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int s = sc.nextInt(), x = sc.nextInt(), ans = 0, m = 1; while(m <= s) { int a = s / (m * 10), b = s / m % 10, c = s % m; if(x…
题目描述 试计算在区间 11 到 nn的所有整数中,数字x(0 ≤ x ≤ 9)x(0≤x≤9)共出现了多少次?例如,在 11到1111中,即在 1,2,3,4,5,6,7,8,9,10,111,2,3,4,5,6,7,8,9,10,11 中,数字 11 出现了 44 次. 输入格式 2个整数n,xn,x,之间用一个空格隔开. 输出格式 1个整数,表示xx出现的次数. 输入输出样例 输入 #1 11 1 输出 #1 4 思路 循环1-n所有数,依次找到这些数中的x出现的次数 C++代码 /* *…
还有一种办法,就是用stringstream函数将每一次的数全都转化成char一维数组样式的字符串,然后逐位扫一遍即可. (记得判断字符时将规定数字+48) //Stand up for the faith!#include<bits/stdc++.h> #define LL long long#define FRO freopen#define FCO fclose#define US unsigned#define RI register#define CN const#define MA…
鉴于数据最高只有七位数,通过判断数位,逐位判断即可完成本题. (运行很快,打得手疼) //Stand up for the faith!#include<bits/stdc++.h> using namespace std;long judge(int i,int p,int j){       int a=0;    if(j==1)    {        if(i%10==p)         a+=1;    }         else if(j==2)    {        if…
P1310 表达式的值 题目描述 给你一个带括号的布尔表达式,其中+表示或操作|,*表示与操作&,先算*再算+.但是待操作的数字(布尔值)不输入. 求能使最终整个式子的值为0的方案数. 题外话 不久之前我在codewars上做过一道类似的题目. 以及把它搬运到了洛谷上. 布尔表达式计数问题 考虑这样一个问题: 有两个布尔变量\(x\)和\(y\). 我们知道使\(x\)等于1的方案有\(x_1\)种,等于0的方案有\(x_0\)种:使\(y\)等于1的方案有\(y_1\)种,等于0的方案有\(y…
洛谷题面传送门 看到图计数的题就条件反射地认为是不可做题并点开了题解--实际上这题以我现在的水平还是有可能能独立解决的( 首先连通这个条件有点棘手,我们尝试把它去掉.考虑这题的套路,我们设 \(f_n\) 表示 \(n\) 个点的有标号 DAG 个数,\(g_n\) 表示 \(n\) 个点的有标号且弱联通的 DAG 个数,那么根据 \(\exp\) 式子的计算方式我们可以列出 \(f,g\) 生成函数之间的 exp 关系,又因为这题带标号,所以有: Trick 1. 对于有标号图连通图计数问题,…
洛谷题面传送门 咦?鸽子 tzc 竟然来补题解了?incredible( 首先看到这样类似于路径统计的问题我们可以非常自然地想到点分治.每次我们找出每个连通块的重心 \(x\) 然后以 \(x\) 为根 DFS 一遍整个子树,我们假设 \(y\) 到 \(x\) 的距离为 \(dep_y\),\(x\to y\) 这一段上颜色的权值之和为 \(sum_y\),那么考虑怎样合并两条路径.显然对于两个在 \(x\) 不同子树内的点 \(y,z\),\(y\to z\) 路径上边的个数就是 \(dep…
洛谷题面传送门 首先显然题目等价于求有多少个长度 \(n-1\) 的序列 \(b\) 满足 \(a_i\le b_i\le a_{i+1}\),满足 \(b_1\oplus b_2\oplus\cdots\oplus b_{n-1}=a_1\oplus a_2\oplus\cdots\oplus a_n=S\). 考虑入手解决这个问题,注意到 \(n\) 数据范围很小,只有 \(18\),而值域非常大,高达 \(2^{60}\),因此可以考虑拆位后 \(2^n\) 枚举个什么状态后计算.但是究竟…
bzoj炸了,靠离线版题目做了两道(过过样例什么的还是轻松的)但是交不了,正巧洛谷有个"大牛分站",就转回洛谷做题了 水题先行,一道傻逼匈牙利 其实本来的思路是搜索然后发现写出来类似于匈牙利(⊙o⊙) (匈牙利的复杂度惊人,1e6秒过) #include <cstdio> ]; ],fir[],to[],nex[]; int N,n,p,q; void add(int p,int q) { nex[++N]=fir[p];to[N]=q;fir[p]=N; } bool f…