9.8解题报告
前50min写完了三个题的暴力,但是暴力的正确性不高qwq。
没有造数据绝对不是因为我懒。
然后开始想正解,T1想了一个O(n)的方法,但是写代码的时候bug太多,所以调试花了将近2个小时。
然后剩下的两个题就没大看。
距考试结束还有20min时,总感觉自己的T1有bug,所以15min写完了n*√n的,交上了这个。
所以最后完美的炸掉了考试。
T1 100 T2 20 T3 10
qwq浪费时间的人绝对不是我。
T1
#include<cmath> #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; int n,tot; int ans[1000010]; int a[100010],b[100010],num[1000010]; int main(){ scanf("%d",&n); for(int i=1;i<=n;i++){ scanf("%d",&a[i]); if(num[a[i]]==0) b[++tot]=a[i]; num[a[i]]++; } for(int i=1;i<=tot;i++) for(int j=1;j<=sqrt(b[i]);j++) if(b[i]%j==0&&(b[i]/j)!=j){ ans[b[i]]+=num[b[i]/j]; ans[b[i]]+=num[j]; } else if(b[i]%j==0&&(b[i]/j)==j) ans[b[i]]+=num[j]; for(int i=1;i<=n;i++) printf("%d\n",ans[a[i]]-1); }
T2
U13091 d1a
T3
P2934 [USACO09JAN]安全出行Safe Travel
原文地址:https://www.cnblogs.com/cangT-Tlan/p/9614323.html
时间: 2024-11-12 20:39:23