problemscpp
A collection of my answers to algorithm problems in c++.
静态 Public 成员函数 | 所有成员列表
luogu::P1008类 参考

洛谷 P1008 [NOIP1998 普及组] 三连击 更多...

#include <luogu.h>

静态 Public 成员函数

static int main (istream &cin, ostream &cout)
 

详细描述

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

在文件 luogu.h22 行定义.

成员函数说明

◆ main()

int luogu::P1008::main ( istream &  cin,
ostream &  cout 
)
static

在文件 luogu.cpp53 行定义.

53 {
54 for(unsigned short i = 1; i <= 3; i++) {
55 for(unsigned short j = 1; j <= 9; j++) {
56 if(j == i) {
57 continue;
58 }
59 for(unsigned short k = 1; k <= 9; k++) {
60 if(k == i || k == j || k * 2 % 10 == j || k * 2 % 10 == i || k * 3 % 10 == j || k * 3 % 10 == i || k == 5) {
61 continue;
62 }
63 const unsigned short num = 100 * i + 10 * j + k;
64 if(num > 333) {
65 continue;
66 }
67 unsigned short num2 = 2 * num;
68 unsigned short num3 = 3 * num;
69 auto um = unordered_set<unsigned short>();
70 um.insert(i);
71 um.insert(j);
72 um.insert(k);
73 unsigned short n = num2 % 10;
74
75 if(um.contains(n) || n == 0) {
76 continue;
77 }
78 um.insert(n);
79 num2 /= 10;
80 n = num2 % 10;
81 if(um.contains(n) || n == 0) {
82 continue;
83 }
84 um.insert(n);
85 num2 /= 10;
86 n = num2 % 10;
87 if(um.contains(n) || n == 0) {
88 continue;
89 }
90 um.insert(n);
91
92 n = num3 % 10;
93 if(um.contains(n) || n == 0) {
94 continue;
95 }
96 um.insert(n);
97 num3 /= 10;
98 n = num3 % 10;
99 if(um.contains(n) || n == 0) {
100 continue;
101 }
102 um.insert(n);
103 num3 /= 10;
104 n = num3 % 10;
105 if(um.contains(n) || n == 0) {
106 continue;
107 }
108 um.insert(n);
109 cout << num << " " << num * 2 << " " << num * 3 << endl;
110 }
111 }
112 }
113 return 0;
114 }

被这些函数引用 luogu::TEST().


该类的文档由以下文件生成: