首页 > 其他分享 >洛谷:P1008 [NOIP1998 普及组] 三连击

洛谷:P1008 [NOIP1998 普及组] 三连击

时间:2024-11-19 19:14:23浏览次数:3  
标签:连击 洛谷 P1008 int 枚举 遍历 100 include 进行

这道题需要我们找出所有符合要求的数对,由于数据量不大,这里我们可以使用枚举的方法进行枚举,那么我们从最小的三位数100到最大数999进行遍历寻找,再对这三个数进行判断,判断这三个数的每一位是否由1-9这9个数组成,且每个数只出现一次。在判断这个地方我们可以用一个数组来进行计数,将三个数的每一位出现的次数进行保存。最后遍历数组,看每一个元素的值是否都是1。

#include <iostream>
#include<cstring>
using namespace std;
int num[10];
int main() {
	//1 2 3 4 5 6 7 8 9 
	for (int i = 100; i <= 333;i++) {
		int a = i, b = 2 * i, c = 3 * i;
		memset(num,0,40);//memset(dst,val,size) 从dst地址开始,将后面size个元素,都置为val
		//对每个位十位百位进行计数
		num[a % 10]++;
		num[a / 10 % 10]++;
		num[a / 100]++;
		num[b % 10]++;
		num[b / 10 % 10]++;
		num[b / 100]++;
		num[c % 10]++;
		num[c / 10 % 10]++;
		num[c / 100]++;
		bool flag = true;
		//是否由1-9数字组成
		for (int j = 1; j <= 9;j++) {
			if (num[j] != 1) {
				flag = false;
				break;
			}
		}
		if (flag) cout << a << " " << b << " " << c << endl;
	}
	return 0;
}

标签:连击,洛谷,P1008,int,枚举,遍历,100,include,进行
From: https://blog.csdn.net/2401_88475903/article/details/143866544

相关文章

  • 洛谷题单指南-二叉堆与树状数组-P5677 [GZOI2017] 配对统计
    原题链接:https://www.luogu.com.cn/problem/P5677题意解读:所谓好的配对,通过分析公式∣ax−ay∣≤∣ax−ai∣(i≠x),可以得知就是一个ax与其差的绝对值最小的形成的配对,在数轴上就是距离ax最近的点ay,配对是下标(x,y),给定若干个区间[l,r],每个区间的配对数*区间编号的累加。解题思路:......
  • 【题解】洛谷:P4805 [CCC2016] 合并饭团
    P4805[CCC2016]合并饭团希望写完这篇题解能真正地会这种题。合并两个的操作很像合并石子的操作,确实直接那么做就可以,但三个怎么办呢,暴力做法就是枚举中间两个端点然后转移,但是这样复杂度太大了有\(O(n^4)\)。于是搬出我们的双指针,在面对区间问题时双指针可以有效地解决问题,......
  • 洛谷P1816忠诚
    洛谷P1816忠诚思路查询区间最小值,\(ST\)表/线段树板子题代码#include<bits/stdc++.h>#defineendl'\n'#defineintlonglongconstintmaxn=2e5+5;constintinf=0x7f7f7f7f;structcustom_hash{ staticuint64_tsplitmix64(uint64_tx){ x^=......
  • 洛谷P2068统计和
    P2068统计和思路单点修改+区间查询线段树/树状数组板子题代码#include<bits/stdc++.h>#defineendl'\n'#defineintlonglong#definelowbit(x)x&-xconstintmaxn=5e5+5;constintinf=0x7f7f7f7f;structcustom_hash{ staticuint64_tsplitmix64......
  • 洛谷P5057简单题
    P5057[CQOI2006]简单题这是题面思路每次操作,直接区间加\(1\),最后求结果的时候对\(2\)取余就好了这个题就是区间修改+单点查询可以用树状数组或者线段数维护代码#include<bits/stdc++.h>#defineendl'\n'#defineintlonglong#definelowbit(x)x&-xconstint......
  • 洛谷题单指南-二叉堆与树状数组-P1908 逆序对
    原题链接:https://www.luogu.com.cn/problem/P1908题意解读:求逆序对,前面介绍过归并排序的做法,参考:https://www.cnblogs.com/jcwy/p/184077,这里介绍树状数组的做法。解题思路:设数组a[n]里的整数只包括1~n,显然对于此题,可以通过离散化得到这样的数组。要计算逆序对,就是要计算对于......
  • 小寄巧——给洛谷题单快速生成一份目录
    以此题单为例,首先我们在浏览器中打开,F12切换到Console,输入document.querySelectorAll(".titlea"),然后复制返回的所有内容,粘贴到VSCode里,内容大致如下:NodeList(15)[a.title.color-default,a.title.color-default,a.title.color-default,a.title.color-default,a.title......
  • 洛谷P3538 [POI2012] OKR-A Horrible Poem
    前言比较典,可以当模板题,故记录一下,写的可能比较水。题意Link长度为\(n\(\leq6\times10^5)\)的字符串,有\(q\(\leq2\times10^6)\)个询问,每次询问求一个区间的最小循环节。思路题面看起来很唬人,我们平时求最短循环节都是用前缀函数,这一放在区间上就不会做了。但实际......
  • 洛谷 P3226 [HNOI2012] 集合选数 做题记录
    我们先建一个矩阵:\(\begin{bmatrix}1&2&4&8&16&32\\3&6&12&24&48&96\\9&18&36&72&144&288\\27&54&108&216&432&864\end{bmatrix}\)......
  • 洛谷题单指南-二叉堆与树状数组-P3368 【模板】树状数组 2
    原题链接:https://www.luogu.com.cn/problem/P3368题意解读:树状数组应用-区间修改,单点求值解题思路:设原数组为s[N],其差分数组为a[N]操作一:区间修改要对s[x]~s[y]每个数增加k,相当于对a[x]加k,对a[y+1]减k,O(n)的操作变成了O(1)的操作,利用树状数组tr[N]的add(x,k),add(y+......