注意完全平方数统计时的特判

 #include <cstdio>

 inline void read(int &x)
{
x=; register char ch=getchar();
for(; ch>''||ch<''; ) ch=getchar();
for(; ch>=''&&ch<=''; ch=getchar()) x=x*+ch-'';
}
const int N();
int n,cnt[N],ans; inline void Update(int x)
{
int i;
for(i=; i*i<x; ++i)
if(x%i==) cnt[i]++,cnt[x/i]++;
if(i*i==x) cnt[i]++;
} int Presist()
{
freopen("a.in","r",stdin);
freopen("a.out","w",stdout); read(n);
for(int op,x; n--; )
{
read(op),read(x);
if(op==) Update(x);
else ans^=cnt[x];
}
printf("%d\n",ans);
return ;
} int Aptal=Presist();
int main(int argc,char**argv){;}

AC

 #include <cstring>
#include <cstdio> #define LL long long
inline void read(int &x)
{
x=; register char ch=getchar();
for(; ch>''||ch<''; ) ch=getchar();
for(; ch>=''&&ch<=''; ch=getchar()) x=x*+ch-'';
}
const int N(3e5+); int cnt[][N],val[N],dad[N];
int sumedge,head[N];
struct Edge {
int v,next,w;
Edge(int v=,int next=,int w=):v(v),next(next),w(w){}
}edge[N<<];
inline void ins(int u,int v,int w)
{
cnt[][u]++; cnt[][v]++;
edge[++sumedge]=Edge(v,head[u],w); head[u]=sumedge;
edge[++sumedge]=Edge(u,head[v],w); head[v]=sumedge;
} bool vis[N];
long long ans; inline void Add(int u)
{
for(; dad[u]; u=dad[u]) cnt[][dad[u]]++;
}
void DFS(int u,int fa,int pre)
{
for(int v,i=head[u]; i; i=edge[i].next)
{
v=edge[i].v;
if(vis[v]||fa==v||edge[i].w==pre) continue;
cnt[][v]++, dad[v]=u;
DFS(v,u,edge[i].w); Add(v); dad[v]=;
}
} int Presist()
{
freopen("b.in","r",stdin);
freopen("b.out","w",stdout);
int n; read(n);
for(int i=; i<=n; ++i) read(val[i]);
for(int u,v,w,i=; i<n; ++i)
read(u),read(v),read(w),ins(u,v,w);
for(int i=; i<=n; ++i)
if(cnt[][i]==) vis[i]=,DFS(i,,);
for(int i=; i<=n; ++i)
if(!vis[i]) vis[i]=,DFS(i,,);
for(int i=; i<=n; ++i)
ans+=1ll*cnt[][i]*val[i];
printf("%I64d\n",ans);
return ;
} int Aptal=Presist();
int main(int argc,char**argv){;}

额。。想法有问题

 /*
呃呃呃
*/

未完成

2017-10-04-afternoon的更多相关文章

  1. Ubuntu 10.04 32位桌面版+OpnERP 6.1.1

      1.准备环境: sudo apt-get install denyhosts sudo apt-get update sudo apt-get dist-upgrade sudo adduser ...

  2. [转]ubuntu 10.04下的配置tftp服务器

    [转]ubuntu 10.04下的配置tftp服务器 http://www.cnblogs.com/geneil/archive/2011/11/24/2261653.html 第1步:安装tftp所 ...

  3. Ofbiz 10.04 + eclipse 安装与配置

    1.下载 ofbiz 10.04:http://ofbiz.apache.org/download.html: 2.下载 freemarker-2.3.15 eclipse 插件(FreeMarker ...

  4. ubuntu 10.04 安装qt 5.0.2

    转自ubuntu 10.04 安装qt 5.0.2 从qt project网站下载下来最新的qt5.0.2套件,发现是个.run文件,添加x属性,然后直接sudo ./****.run, 提示  /l ...

  5. 【转】Ubuntu 10.04 LTS 的窗口控制按钮从左上角调整到右上角

    原文网址:http://www.linuxidc.com/Linux/2010-05/26111.htm 升级到Ubuntu 10.04后最大的问题,是最小最大和关闭按钮,放到了左边.这叫Ubuntu ...

  6. 解决:“Ubuntu 10.04 LTS _Lucid Lynx_ - Release i38...

    编译android源码,找不到g++.通过apt-get下载时候,总是提示“Ubuntu 10.04 LTS _Lucid Lynx_ - Release i386 (20100429)” 的盘片插入 ...

  7. 九月 26, 2017 10:18:14 上午 com.sun.jersey.server.impl.application.RootResourceUriRules <init> 严重: The ResourceConfig instance does not contain any root resource classes.

    Tomcat启动错误:九月 26, 2017 10:18:14 上午 com.sun.jersey.server.impl.application.RootResourceUriRules <i ...

  8. Ubuntu LTS 系统学习使用体会和实用工具软件汇总 6.04 8.04 10.04 12.04 14.04 16.04

    Ubuntu LTS 系统学习体会和工具软件汇总 6.04 8.04 10.04 12.04 14.04 16.04 ubuntu入门必备pdf:http://download.csdn.net/de ...

  9. Using iSCSI On Ubuntu 10.04 (Initiator And Target)

    This guide explains how you can set up an iSCSI target and an iSCSI initiator (client), both running ...

  10. Ubuntu 10.04下架设流媒体服务器

    Ubuntu 10.04下架设流媒体服务器 个人建议:使用DarwinStreamingSrvr5.5.5,因为DarwinStreamingSrvr6.0.3安装过程中有很多问题需要解决! 目前主流 ...

随机推荐

  1. element ui select组件和table做分页完整功能和二级联动效果

    <template> <div class="index_box"> <div class="search_box"> &l ...

  2. 骑芯供应链(T 面试)

    1.目前市面上主流的团队开发模式是什么? 正解:DevOps,https://blog.csdn.net/bntX2jSQfEHy7/article/details/79168865 2.你觉得什么是 ...

  3. Day.js 是一个轻量的处理时间和日期的 JavaScript 库

    Day.js 是一个轻量的处理时间和日期的 JavaScript 库,和 Moment.js 的 API 设计保持完全一样. 如果您曾经用过 Moment.js, 那么您已经知道如何使用 Day.js ...

  4. QT_3

    1.QT中命名的规范和常用的快捷键 1.1 命名规范: 类名:首字母大写    多个单词时单词与单词之间首 字母大写 函数名:变量名称   首字母小写    多个单词时,单词和单词之间首字母大写 1. ...

  5. U盘制作安装盘后容量不能恢复的解决方案

    diskpartlist diskselect disk 0/1 --看具体U盘是0还是1clean

  6. 初探node.js

    一.定义及优势 定义:Node.js是一个基于 Chrome V8 引擎 的 JavaScript 运行时,它以事件驱动为基础实现了非阻塞模型. 优势:由于Web场景下的大多数任务(静态资源读取.数据 ...

  7. 解决chrome 批量下载器 mgblihnaaedmhhgadafknogahbgejnno 插件乱码

    找到 mgblihnaaedmhhgadafknogahbgejnno\当前版本号(0.0.1_0)\popup.html <html> <head> <meta cha ...

  8. 什么是JavaScript框架-------share

    摘要:现代网站和web应用程序趋向于依赖客户端的大量的javascript来提供丰富的交互.特别是通过不刷新页面的异步请求来返回数据或从服务器端的脚本(或数据系统)中得到响应.在这篇文章中,你将会了解 ...

  9. js检测对象是否是数组

    js检测对象是否是数组 可以通过instanceof 方法一. var arr=[] arr instanceof Array   //true var obj={} obj instanceof A ...

  10. 操作系统复习——如何查看一个进程的详细信息,如何追踪一个进程的执行过程 ,如何在 Linux 系统下查看 CPU、内存、磁盘、IO、网卡情况?epoll和select区别?

    1. 如何查看一个进程的详细信息,如何追踪一个进程的执行过程 通过pstree命令(根据pid)进行查询进程内部当前运行了多少线程:# pstree -p 19135(进程号) 使用top命令查看(可 ...