重点:通过比较局面情况,计算局面出现次数。 python满分题解: n = int(input()) Jumian = [] total = [] for i in range(n): Ju = [] for j in range(8): Ju.append(input()) Jumian.append(Ju) for i in range(n): sum = 0 for j in range(i+1): if Jumian[i] == Jumian[j]:...
public: friend bool beTheSame(Step a, Step b); friend istream& operator>>(istream& input, Step& s); char* operator[](int index) { return chess[index]; } }; bool beTheSame(Step a, Step b) { for (int i = 0; i < 8; i++) for (int j = 0; j < 8; j++) if (a[i...
输入的第一行包含一个正整数 �,表示这盘棋总共有 � 步。 接下来 8×� 行,依次输入第 1 到第 � 步棋后的局面。具体来说每行包含一个长度为 8 的字符串,每 8 行字符串共 64 个字符对应一个局面。 输出格式 输出到标准输出中。 输出共 � 行,每行一个整数,表示该局面是第几次出现。 样...
CSP题解|202305-1 重复局面|100分 #include <bits/stdc++.h> using namespace std; int main(){ int n;cin>>n; map<string,int>mp; while(n--){ //n为步数 int row=8; string s=""; while(row--){ string temp; cin>>temp; s+=temp; } if(mp.find(s)==mp.end()){ cout<<1<<en...
using namespace std; class Step { private: char chess[8][8]; public: friend bool beTheSame(Step a, Step b); friend istream& operator>>(istream& input, Step& s); char* operator[](int index) { return chess[index]; } };
CSP题解|202305-1 重复局面|100分 #include <bits/stdc++.h> using namespace std; int main(){ int n;cin>>n; map<string,int>mp; while(n--){ //n为步数 int row=8; string s=""; while(row--){ string temp; cin>>temp; s+=temp; } if(mp.find(s)==mp.end()){ cout<<1<<...