chen_zhe @ 2026-11-07 13:21:46
请在:https://www.zhihu.com/question/2102502792200037086 进行后续讨论。
很抱歉占用了学术版的资源。我昨天提交了举报信,今天收到了回信,内容如下:
你好!
收到你关于被认证者LN-S00088、LN-S00089代码雷同的举报材料。CCF针对程序雷同查处设有既定工作流程,目前本次认证的雷同调查工作已经完成。雷同判定需要充分、完备的证据支撑,仅提供线索、基于相似度主观怀疑,不足以启动雷同调查,本次举报暂不予受理。
同时说明举报相关规范:实名举报除举报人姓名外,还须一并提交有效身份证件扫描件/照片、所属单位、联系电话等材料。请知悉。
祝好!
我认为这一组代码相似度确实过高,应当启动雷同调查。CCF 要求实名举报时提交有效身份证件扫描件/照片、所属单位、联系电话等材料,该要求过于严苛,是在人为地给举报设置障碍,不利于竞赛公平。
希望大家一起向学会进行举报。NOI 竞赛办公室;[email protected]、电话 010-82612091
#include<bits/stdc++.h>
using namespace std;
long long c,t;long long n,d;long long a[200006];int mx[50006][50006];bool vis[200006];int cnt[50006][50006];
void dfs(int u,int sum){for(int i=1;i<=n;i++){
if(a[max(u,i)]-a[min(u,i)]>d&&vis[i]==0){
vis[i]=1;
mx[u][i]=min(sum+1,mx[u][i]);
dfs(i,sum+1);
vis[i]=0;
}
}
}
void dfs2(int u,int sum){
for(int i=1;i<=n;i++){
if(a[max(u,i)]-a[min(u,i)]>d&&vis[i]==0){
vis[i]=1;
if(sum+1==mx[u][i]){
cnt[u][i]++;
}
dfs(i,sum+1);
vis[i]=0;
}
}
}
int main()
{
freopen("migrate.in","r",stdin);
freopen("migrate.out","w",stdout);
cin>>c>>t;
while(t--){
cin>>n>>d;
for(int i=1;i<=n;i++){
cin>>a[i];
}int ans=0;for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){
}
}for(int i=1;i<=n;i++){
memset(vis,0,sizeof(vis))dfs(i,0);
}for(int i=1;i<=n;i++){memset(vis,0,sizeof(vis));dfs2(i,0);
}
for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(i==j){continue;
}if(cnt[i][j]==2){}
ans++;
}
}
cout<<ans<<endl;
}
return 0;
}
#include<bits/stdc++.h>
using namespace std;
#define int long long
int c,t;
int n,d;
int a[5006];
int mx[5006][5006];
int cnt[5006][5006];
bool vis[5006];
/*void bfs(int x){
queue<pair<int,int>> q;
memset(vis,0,sizeof(vis));
vis[x]=1;
q.push({x,0});
while(!q.empty()){
pair<int,int> u=q.front();
q.pop();
for(int i=1;i<=n;i++mx[u][i]=min(sum+1,mx[u][i]);mx[u][i]=min(sum+1,mx[u][i]);){
if(a[max(x,i)]-a[min(x,i)]>d||vis[i]==1){
vis[]
}
}
}
}
*/
void dfs(int u,int sum){
for(int i=1;i<=n;i++){
if(a[max(u,i)]-a[min(u,i)]<=d&&vis[i]==0){
vis[i]=1;
mx[u][i]=min(sum+1,mx[u][i]);
dfs(i,sum+1);
vis[i]=0;
}
}
}
void dfs2(int u,int sum){
for(int i=1;i<=n;i++){
if(a[max(u,i)]-a[min(u,i)]<=d&&vis[i]==0){
vis[i]=1;
if(sum+1==mx[u][i]){
cnt[u][i]++;
}
dfs(i,sum+1);
vis[i]=0;
}
}
}
signed main(){
freopen("migrate.in","r",stdin);
freopen("migrate.out","w",stdout);
ios::sync_with_stdio(false);
cin.tie(nullptr);
cin>>c>>t;
while(t--){
cin>>n>>d;
for(int i=1;i<=n;i++){
cin>>a[i];
}
int ans=0;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(i==j)
continue;
mx[i][j]=1e18;
}
}
for(int i=1;i<=n;i++){
memset(vis,0,sizeof(vis));
dfs(i,0);
}
for(int i=1;i<=n;i++){
memset(vis,0,sizeof(vis));
dfs2(i,0);
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(i==j)
continue;
if(cnt[i][j]==2){
ans++;
}
}
}
cout<<ans<<'\n';
}
return 0;
}
by ForgetOIDuck @ 2026-11-07 13:22:44
qp
by interesting_soul_zjy @ 2026-11-07 13:22:45
zc
by tallnut @ 2026-11-07 13:23:04
做干净的奥赛
by Morning_field @ 2026-11-07 13:23:13
qp
by UnionRE @ 2026-11-07 13:23:26
嚣张哦
by HLTing @ 2026-11-07 13:23:31
做干净的奥赛
by OvO_FgSn @ 2026-11-07 13:23:40
做干净的奥赛
by KinoHimari @ 2026-11-07 13:23:47
qp
by Richard6666 @ 2026-11-07 13:23:48
qp
by xzx_watermelon @ 2026-11-07 13:23:51
zc